This commit is contained in:
wangcongtao
2019-12-27 19:56:30 +08:00
parent 522c5e2dbf
commit ae9ddcb369
308 changed files with 6608 additions and 607 deletions

View File

@@ -34,7 +34,7 @@ android {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
api project(":libraries:mogo-map")
api project(":libraries:mogo-map-api")
api rootProject.ext.dependencies.androidxappcompat
implementation rootProject.ext.dependencies.arouter
annotationProcessor rootProject.ext.dependencies.aroutercompiler

View File

@@ -6,17 +6,16 @@ import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.map.listener.IMogoMapListener;
import com.mogo.map.listener.IMogoMapListenerRegister;
import com.mogo.map.location.IMogoLocationClient;
import com.mogo.map.marker.IMogoMarker;
import com.mogo.map.marker.MogoMarkerOptions;
import com.mogo.map.marker.IMogoMarkerManager;
import com.mogo.map.navi.IMogoNavi;
import com.mogo.map.navi.IMogoNaviListener;
import com.mogo.map.navi.IMogoNaviListenerRegister;
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.MogoPoiSearch;
import com.mogo.map.search.poisearch.query.MogoPoiSearchQuery;
import java.util.ArrayList;
import java.util.List;
import com.mogo.map.uicontroller.IMogoMapUIController;
/**
* @author congtaowang
@@ -24,7 +23,7 @@ import java.util.List;
* <p>
* 地图对外地接口
*/
public interface IMogoMapService extends IProvider, IMogoMapListenerRegister {
public interface IMogoMapService extends IProvider, IMogoMapListenerRegister, IMogoNaviListenerRegister {
/**
* 获取定位服务实例,全局唯一
@@ -34,24 +33,6 @@ public interface IMogoMapService extends IProvider, IMogoMapListenerRegister {
*/
IMogoLocationClient getSingletonLocationClient( Context context );
/**
* 添加marker
*
* @param tag 标识调用者
* @param options
* @return
*/
IMogoMarker addMarker( String tag, MogoMarkerOptions options );
/**
* 添加多个marker
*
* @param tag 标识调用者
* @param options
* @return
*/
List< IMogoMarker > addMarkers( String tag, ArrayList< MogoMarkerOptions > options, boolean moveToCenter );
/**
* 获取关键字搜索地址服务
*
@@ -70,17 +51,29 @@ public interface IMogoMapService extends IProvider, IMogoMapListenerRegister {
IMogoGeoSearch getGeoSearch( Context context );
/**
* 注册地图事件
* 注册地图事件,各业务模块不用关注
*
* @param listener 回调事件
*/
void registerHostMapListener( IMogoMapListener listener );
/**
* 反注册注册地图事件
* 反注册注册地图事件,各业务模块不用关注
*/
void unregisterHostMapListener();
/**
* 注册导航回调,各业务模块不用关注
*
* @param listener 回调函数
*/
void registerHostNaviListener( IMogoNaviListener listener );
/**
* 注销导航回调,各业务模块不用关注
*/
void unregisterHostNaviListener();
/**
* poi搜索服务
*
@@ -91,14 +84,19 @@ public interface IMogoMapService extends IProvider, IMogoMapListenerRegister {
IMogoPoiSearch getPoiSearch( Context context, MogoPoiSearchQuery query );
/**
* 移除某一个类、某个模块的markers
* 获取导航操作实例
*
* @param tag
* @param context
* @return
*/
void removeMarkers( String tag );
IMogoNavi getNavi( Context context );
/**
* 移除地图上所有markers
* marker 操作
*
* @return
*/
void removeMarkers();
IMogoMarkerManager getMarkerManager(Context context);
IMogoMapUIController getMapUIController();
}

View File

@@ -9,6 +9,7 @@ import androidx.fragment.app.Fragment;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.map.listener.IMogoMapListener;
import com.mogo.map.navi.IMogoNaviListener;
/**
* @author congtaowang
@@ -75,4 +76,11 @@ public interface IMogoModuleProvider extends IProvider {
* @return
*/
int getType();
/**
* 导航监听
*
* @return
*/
IMogoNaviListener getNaviListener();
}

View File

@@ -40,7 +40,8 @@ android {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation project(":libraries:mogo-map")
api project(":libraries:mogo-map")
implementation project(":libraries:mogo-map-api")
implementation project(":foudations:mogo-utils")
implementation project(":foudations:mogo-commons")
implementation project(':services:mogo-service-api')

View File

@@ -3,28 +3,29 @@ package com.mogo.service.impl.map;
import android.content.Context;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.mogo.map.MogoMap;
import com.mogo.map.MogoGeoSearch;
import com.mogo.map.MogoInitor;
import com.mogo.map.MogoInputtipsSearch;
import com.mogo.map.MogoLocationClient;
import com.mogo.map.MogoMapUIController;
import com.mogo.map.MogoMarkerManager;
import com.mogo.map.MogoNavi;
import com.mogo.map.MogoPoiSearch;
import com.mogo.map.listener.IMogoMapListener;
import com.mogo.map.listener.MogoMapListenerHandler;
import com.mogo.map.location.IMogoLocationClient;
import com.mogo.map.location.MogoLocationClient;
import com.mogo.map.marker.IMogoMarker;
import com.mogo.map.marker.MogoMarker;
import com.mogo.map.marker.MogoMarkerOptions;
import com.mogo.map.marker.MogoMarkersHandler;
import com.mogo.map.marker.IMogoMarkerManager;
import com.mogo.map.navi.IMogoNavi;
import com.mogo.map.navi.IMogoNaviListener;
import com.mogo.map.navi.MogoNaviListenerHandler;
import com.mogo.map.search.geo.IMogoGeoSearch;
import com.mogo.map.search.inputtips.IMogoInputtipsSearch;
import com.mogo.map.search.geo.MogoGeoSearch;
import com.mogo.map.search.inputtips.MogoInputtipsSearch;
import com.mogo.map.search.inputtips.query.MogoInputtipsQuery;
import com.mogo.map.listener.IMogoMapListener;
import com.mogo.map.search.poisearch.IMogoPoiSearch;
import com.mogo.map.search.poisearch.MogoPoiSearch;
import com.mogo.map.search.poisearch.query.MogoPoiSearchQuery;
import com.mogo.service.map.IMogoMapService;
import com.mogo.map.uicontroller.IMogoMapUIController;
import com.mogo.service.MogoServicePaths;
import java.util.ArrayList;
import java.util.List;
import com.mogo.service.map.IMogoMapService;
/**
* @author congtaowang
@@ -40,24 +41,6 @@ public class MogoMapService implements IMogoMapService {
return MogoLocationClient.getInstance( context );
}
@Override
public IMogoMarker addMarker( String tag, MogoMarkerOptions options ) {
try {
return MogoMap.getInstance().getMogoMap().addMarker( tag, options );
} catch ( Exception e ) {
return null;
}
}
@Override
public List< IMogoMarker > addMarkers( String tag, ArrayList< MogoMarkerOptions > options, boolean moveToCenter ) {
try {
return MogoMap.getInstance().getMogoMap().addMarkers( tag, options, moveToCenter );
} catch ( Exception e ) {
return null;
}
}
@Override
public IMogoInputtipsSearch getInputtipsSearch( Context context, MogoInputtipsQuery query ) {
return new MogoInputtipsSearch( context, query );
@@ -84,17 +67,32 @@ public class MogoMapService implements IMogoMapService {
}
@Override
public void removeMarkers( String tag ) {
MogoMarkersHandler.getInstance().remove( tag );
public IMogoNavi getNavi( Context context ) {
return MogoNavi.getInstance( context );
}
@Override
public void removeMarkers() {
MogoMarkersHandler.getInstance().removeAll();
public IMogoMarkerManager getMarkerManager(Context context) {
return MogoMarkerManager.getInstance(context);
}
@Override
public IMogoMapUIController getMapUIController() {
return MogoMapUIController.getInstance();
}
@Override
public void registerHostNaviListener( IMogoNaviListener listener ) {
MogoNaviListenerHandler.getInstance().registerHostNaviListener( listener );
}
@Override
public void unregisterHostNaviListener() {
MogoNaviListenerHandler.getInstance().unregisterHostNaviListener();
}
@Override
public void init( Context context ) {
MogoInitor.init( context );
}
}