[Update]Map按照新架构重构

This commit is contained in:
chenfufeng
2022-03-16 17:50:57 +08:00
parent 95c7251b54
commit 989f59678d
111 changed files with 5552 additions and 524 deletions

View File

@@ -51,9 +51,11 @@ dependencies {
if (Boolean.valueOf(USE_MAVEN_PACKAGE)) {
implementation rootProject.ext.dependencies.mogo_core_data
compileOnly rootProject.ext.dependencies.adasHigh
compileOnly rootProject.ext.dependencies.mogomapapi
} else {
implementation project(':core:mogo-core-data')
compileOnly project(':libraries:mogo-adas')
compileOnly project(':libraries:mogo-map-api')
}
}

View File

@@ -0,0 +1,25 @@
package com.mogo.eagle.core.function.api.map;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.map.IDestroyable;
/**
* @author congtaowang
* @since 2020/10/23
* <p>
* 地图图层切换:高德地图 <-> 自研地图,过渡期使用
*/
public interface IMogoMapFrameController extends IProvider, IDestroyable {
void initDelegate(IMogoMapFrameController controller);
/**
* 切换到高德2D
*/
void changeTo2dMode();
/**
* 切换到自研vr
*/
void changeToVRMode();
}

View File

@@ -0,0 +1,91 @@
package com.mogo.eagle.core.function.api.map;
import android.content.Context;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.map.listener.IMogoHosListenerRegister;
import com.mogo.map.location.IMogoLocationClient;
import com.mogo.map.marker.IMogoMarkerManager;
import com.mogo.map.overlay.IMogoOverlayManager;
import com.mogo.map.search.geo.IMogoGeoSearch;
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;
/**
* @author congtaowang
* @since 2019-12-18
* <p>
* 地图对外接口
*/
public interface IMogoMapService extends IProvider {
/**
* 获取定位服务实例,全局唯一
*
* @param context
* @return
*/
IMogoLocationClient getSingletonLocationClient( Context context );
/**
* 地理编码或逆地理编码服务
*
* @param context
* @return
*/
IMogoGeoSearch getGeoSearch( Context context );
/**
* poi搜索服务
*
* @param context
* @param query
* @return
*/
IMogoPoiSearch getPoiSearch( Context context, MogoPoiSearchQuery query );
/**
* marker 操作
*
* @return
*/
IMogoMarkerManager getMarkerManager( Context context );
/**
* 地图UI控制
*
* @return
*/
IMogoMapUIController getMapUIController();
/**
* 主模块监听注册
*
* @return
*/
IMogoHosListenerRegister getHostListenerRegister();
/**
* 覆盖物操作
*
* @param context
* @return
*/
IMogoOverlayManager getOverlayManager( Context context );
/**
* 交通态势查询
*
* @return
*/
IMogoTrafficSearch getTrafficSearchApi();
/**
* 获取地图版本号
* @return
*/
String getMapVersion();
}

View File

@@ -1,13 +0,0 @@
package com.mogo.eagle.core.function.api.map.location
import com.mogo.eagle.core.function.api.base.IMoGoFunctionServerProvider
/**
* @author renwj
* @date 2021/11/04 16:10 下午
* 此类主要用来同步自动驾驶定位信息给各业务方
*/
interface IMoGoLocationUpdater4AutoPilot : IMoGoFunctionServerProvider {
fun updateLocation(location: Any?)
}

View File

@@ -0,0 +1,25 @@
package com.mogo.eagle.core.function.api.map.marker;
import androidx.annotation.Nullable;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.map.marker.IMogoMarker;
import com.mogo.map.uicontroller.IMogoMapUIController;
/**
* @author congtaowang
* @since 2020-05-27
* <p>
* 描述
*/
public interface IMogoMarkerService extends IProvider {
/**
* @param object instance of com.mogo.module.common.entity.MarkerShowEntity
* @return
*/
@Nullable
IMogoMarker drawMarker( Object object );
IMogoMapUIController getMapUIController();
}