首先是demo6.3.0
导航SDK和地图SDK貌似是冲突的。我想既然导航了肯定会规划线路所以舍弃纯路线规划用导航试试。
删除地图SDK的3D包后地图控件变成一片黑,经过思考原因应该是地图SDK的控件是com.amap.api.maps.MapView
而导航SDK的控件是com.amap.api.navi.AMapNaviView
所以不兼容。另外他们需要的权限也不同,需要仔细对待(特别是os包不一样
)。
1.APP内嵌导航
2.吊起高德APP导航
模拟导航:
定义起点坐标,定义终点坐标,定义起点坐标集合,定义终点坐标集合。
//算路终点坐标
protected NaviLatLng mEndLatlng = new NaviLatLng(22.652, 113.966);
//算路起点坐标
protected NaviLatLng mStartLatlng = new NaviLatLng(22.540332, 113.939961);
//存储算路起点的列表
protected final List<NaviLatLng> sList = new ArrayList<NaviLatLng>();
//存储算路终点的列表
protected final List<NaviLatLng> eList = new ArrayList<NaviLatLng>();
//实现AMapNaviView生命周期
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//获取AMapNavi实例
mAMapNavi = AMapNavi.getInstance(getApplicationContext());