[Update] 升级ARouter 版本,支持Fragment单利

[Change] 修改地图层、HMI层加载方式,采用ARouter方式获取Fragment实例进行加载;废弃MoGoWarningProvider使用MoGoHmiFragment接管IMoGoWaringProvider实现

Signed-off-by: donghongyu <donghongyu@zhidaoauto.com>
This commit is contained in:
donghongyu
2021-11-10 19:11:04 +08:00
parent 8580551598
commit cc7870fa9f
27 changed files with 233 additions and 540 deletions

View File

@@ -285,9 +285,5 @@ public interface IMogoServiceApis extends IProvider {
*/
IV2XProvider getV2XListenerManager();
/**
* warning 模块
*/
IMoGoWaringProvider getWaringProviderApi();
}

View File

@@ -3,16 +3,15 @@ package com.mogo.service.map;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.map.IDestroyable;
public
/**
* @author congtaowang
* @since 2020/10/23
*
* <p>
* 地图图层切换:高德地图 <-> 自研地图,过渡期使用
*/
interface IMogoMapFrameController extends IProvider, IDestroyable {
public interface IMogoMapFrameController extends IProvider, IDestroyable {
void initDelegate( IMogoMapFrameController controller );
void initDelegate(IMogoMapFrameController controller);
/**
* 切换到高德2D

View File

@@ -3,18 +3,13 @@ package com.mogo.service.map;
import android.content.Context;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.map.CoordinatesTransformer;
import com.mogo.map.IMogoMapViewInstanceHandler;
import com.mogo.map.listener.IMogoHosListenerRegister;
import com.mogo.map.location.IMogoLocationClient;
import com.mogo.map.marker.IMogoMarkerManager;
import com.mogo.map.navi.IMogoAimless;
import com.mogo.map.navi.IMogoNavi;
import com.mogo.map.overlay.IMogoOverlayManager;
import com.mogo.map.search.drive.IMogoRoadSearch;
import com.mogo.map.search.geo.IMogoGeoSearch;
import com.mogo.map.search.inputtips.IMogoInputtipsSearch;
import com.mogo.map.search.inputtips.query.MogoInputtipsQuery;
import com.mogo.map.search.poisearch.IMogoPoiSearch;
import com.mogo.map.search.poisearch.query.MogoPoiSearchQuery;
import com.mogo.map.search.traffic.IMogoTrafficSearch;
@@ -45,15 +40,6 @@ public interface IMogoMapService extends IProvider {
@Deprecated
IMogoLocationClient getLocationClient( Context context );
/**
* 获取关键字搜索地址服务
*
* @param context
* @param query
* @return
*/
IMogoInputtipsSearch getInputtipsSearch( Context context, MogoInputtipsQuery query );
/**
* 地理编码或逆地理编码服务
*
@@ -117,20 +103,6 @@ public interface IMogoMapService extends IProvider {
*/
IMogoOverlayManager getOverlayManager( Context context );
/**
* 路线搜索
*
* @return
*/
IMogoRoadSearch getRoadSearchApi();
/**
* 地图实例
*
* @return
*/
IMogoMapViewInstanceHandler getMapViewInstanceHandler();
/**
* 交通态势查询
*
@@ -138,13 +110,6 @@ public interface IMogoMapService extends IProvider {
*/
IMogoTrafficSearch getTrafficSearchApi();
/**
* 坐标转换工具
*
* @return
*/
CoordinatesTransformer getCoordinatesTransformer();
/**
* 获取地图版本号
* @return

View File

@@ -6,7 +6,6 @@ import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.alibaba.android.arouter.launcher.ARouter;
import com.mogo.eagle.core.data.constants.MogoServicePaths;
import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWaringProvider;
import com.mogo.service.IMogoServiceApis;
import com.mogo.service.adas.IMogoADASController;
import com.mogo.service.analytics.IMogoAnalytics;
@@ -236,11 +235,6 @@ public class MogoServiceApis implements IMogoServiceApis {
return getApiInstance(IV2XProvider.class, MogoServicePaths.PATH_V2X_FRONT_CRASH_WARNING);
}
@Override
public IMoGoWaringProvider getWaringProviderApi() {
return getApiInstance(IMoGoWaringProvider.class, MogoServicePaths.PATH_HMI);
}
@Override
public IMogoTrafficUploadProvider getTrafficUploadApi() {
return getApiInstance(IMogoTrafficUploadProvider.class, MogoServicePaths.PATH_TRAFFIC_UPLOAD);

View File

@@ -3,21 +3,16 @@ package com.mogo.service.impl.map;
import android.content.Context;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.mogo.map.CoordinatesTransformer;
import com.mogo.map.IMogoMapViewInstanceHandler;
import com.mogo.eagle.core.data.constants.MogoServicePaths;
import com.mogo.map.MogoAimless;
import com.mogo.map.MogoCoordinatesTransformer;
import com.mogo.map.MogoGeoSearch;
import com.mogo.map.MogoInputtipsSearch;
import com.mogo.map.MogoLocationClient;
import com.mogo.map.MogoMap;
import com.mogo.map.MogoMapUIController;
import com.mogo.map.MogoMapViewInstanceHandler;
import com.mogo.map.MogoMarkerManager;
import com.mogo.map.MogoNavi;
import com.mogo.map.MogoOverlayManager;
import com.mogo.map.MogoPoiSearch;
import com.mogo.map.MogoRoadSearch;
import com.mogo.map.MogoTrafficSearch;
import com.mogo.map.listener.IMogoHosListenerRegister;
import com.mogo.map.listener.MogoHosListenerRegister;
@@ -26,15 +21,11 @@ import com.mogo.map.marker.IMogoMarkerManager;
import com.mogo.map.navi.IMogoAimless;
import com.mogo.map.navi.IMogoNavi;
import com.mogo.map.overlay.IMogoOverlayManager;
import com.mogo.map.search.drive.IMogoRoadSearch;
import com.mogo.map.search.geo.IMogoGeoSearch;
import com.mogo.map.search.inputtips.IMogoInputtipsSearch;
import com.mogo.map.search.inputtips.query.MogoInputtipsQuery;
import com.mogo.map.search.poisearch.IMogoPoiSearch;
import com.mogo.map.search.poisearch.query.MogoPoiSearchQuery;
import com.mogo.map.search.traffic.IMogoTrafficSearch;
import com.mogo.map.uicontroller.IMogoMapUIController;
import com.mogo.eagle.core.data.constants.MogoServicePaths;
import com.mogo.service.map.IMogoMapService;
/**
@@ -43,47 +34,42 @@ import com.mogo.service.map.IMogoMapService;
* <p>
* 地图对外地接口
*/
@Route( path = MogoServicePaths.PATH_SERVICES_MAP )
@Route(path = MogoServicePaths.PATH_SERVICES_MAP)
public class MogoMapService implements IMogoMapService {
@Override
public IMogoLocationClient getSingletonLocationClient( Context context ) {
return MogoLocationClient.getInstance( context );
public IMogoLocationClient getSingletonLocationClient(Context context) {
return MogoLocationClient.getInstance(context);
}
@Override
public IMogoLocationClient getLocationClient( Context context ) {
return new MogoLocationClient( context );
public IMogoLocationClient getLocationClient(Context context) {
return new MogoLocationClient(context);
}
@Override
public IMogoInputtipsSearch getInputtipsSearch( Context context, MogoInputtipsQuery query ) {
return new MogoInputtipsSearch( context, query );
public IMogoGeoSearch getGeoSearch(Context context) {
return new MogoGeoSearch(context);
}
@Override
public IMogoGeoSearch getGeoSearch( Context context ) {
return new MogoGeoSearch( context );
public IMogoPoiSearch getPoiSearch(Context context, MogoPoiSearchQuery query) {
return new MogoPoiSearch(context, query);
}
@Override
public IMogoPoiSearch getPoiSearch( Context context, MogoPoiSearchQuery query ) {
return new MogoPoiSearch( context, query );
public IMogoNavi getNavi(Context context) {
return MogoNavi.getInstance(context);
}
@Override
public IMogoNavi getNavi( Context context ) {
return MogoNavi.getInstance( context );
public IMogoAimless getAimless(Context context) {
return MogoAimless.getInstance(context);
}
@Override
public IMogoAimless getAimless( Context context ) {
return MogoAimless.getInstance( context );
}
@Override
public IMogoMarkerManager getMarkerManager( Context context ) {
return MogoMarkerManager.getInstance( context );
public IMogoMarkerManager getMarkerManager(Context context) {
return MogoMarkerManager.getInstance(context);
}
@Override
@@ -97,30 +83,15 @@ public class MogoMapService implements IMogoMapService {
}
@Override
public IMogoOverlayManager getOverlayManager( Context context ) {
public IMogoOverlayManager getOverlayManager(Context context) {
return MogoOverlayManager.getInstance();
}
@Override
public IMogoRoadSearch getRoadSearchApi() {
return new MogoRoadSearch();
}
@Override
public IMogoMapViewInstanceHandler getMapViewInstanceHandler() {
return MogoMapViewInstanceHandler.getInstance();
}
@Override
public IMogoTrafficSearch getTrafficSearchApi() {
return new MogoTrafficSearch();
}
@Override
public CoordinatesTransformer getCoordinatesTransformer() {
return MogoCoordinatesTransformer.getInstance();
}
@Override
public String getMapVersion() {
if (MogoMap.getInstance().getMogoMap() != null) {
@@ -131,7 +102,7 @@ public class MogoMapService implements IMogoMapService {
}
@Override
public void init( Context context ) {
public void init(Context context) {
}
}