android---高德地图(4)路线规划

配置工程:

使用 Android 导航 SDK 时,必须配合Android SDK 3D地图包 V2.2.1及以上版本一同使用,各版本对应地图版本号如下:

Android 导航 SDK Android SDK
V1.0.0 V2.2.1或以上版本 3D地图包
V1.1.0 V2.3.0或以上版本3D 地图包

配置工程的具体步骤如下:

1.从网站下载开发包并解压。

  • 导航 SDK开发包解压后得到:“Android_Navi_V1.X.X.jar”和文件夹“armeabi”(含libtbt.so文件)。
  • 3D地图包解压后得到:“ Android_Map_2.x.x.jar ”和文件夹“ armeabi ”(以 V2.2.1为例,含 libamapv303.so 和 libmapv303ex.so 文件)。
 2.语音功能将在后续介绍。
路线规划跟导航都是使用了对象AMapNavi mapNavi; 类需要implements AMapNaviListener 这个接口,并实现
@Override
public void onArriveDestination() {
// TODO Auto-generated method stub
}
@Override
public void onArrivedWayPoint(int arg0) {
// TODO Auto-generated method stub
}
@Override
public void onCalculateRouteFailure(int arg0) {
// TODO Auto-generated method stub
}
//导航成功后,执行该方法,先进行路线绘制,再跳转到导航界面
@Override
public void onCalculateRouteSuccess() {
// TODO Auto-generated method stub
AMapNaviPath naviPath = mapNavi.getNaviPath();
if (naviPath == null) {
return;
}
// 获取路径规划线路,显示到地图上
mRouteOverLay.setRouteInfo(naviPath);
mRouteOverLay.addToMap();

               //跳转到导航界面
Intent intent = new Intent(MainActivity.this,
NaviActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);
AMapNavi.getInstance(this).removeAMapNaviListener(this);
}
@Override
public void onEndEmulatorNavi() {
// TODO Auto-generated method stub
}
@Override
public void onGetNavigationText(int arg0, String arg1) {
// TODO Auto-generated method stub
}
@Override
public void onGpsOpenStatus(boolean arg0) {
// TODO Auto-generated method stub
}
@Override
public void onInitNaviFailure() {
// TODO Auto-generated method stub
}
@Override
public void onInitNaviSuccess() {
// TODO Auto-generated method stub
}
@Override
public void onLocationChange(AMapNaviLocation arg0) {
// TODO Auto-generated method stub
}
@Override
public void onNaviInfoUpdated(AMapNaviInfo arg0) {
// TODO Auto-generated method stub
}
@Override
public void onReCalculateRouteForTrafficJam() {
// TODO Auto-generated method stub
}
@Override
public void onReCalculateRouteForYaw() {
// TODO Auto-generated method stub
}
@Override
public void onStartNavi(int arg0) {
// TODO Auto-generated method stub
}
@Override
public void onTrafficStatusUpdate() {
// TODO Auto-generated method stub
}
在适当的位置进行注册监听,并进行步行导航
  AMapNavi.getInstance(this).setAMapNaviListener(this);
//启动步行路线规划
   AMapNavi.getInstance(this).calculateWalkRoute(mNaviStart,
   mNaviEnd);





@@成员变量 
mRouteOverLay
private RouteOverLay mRouteOverLay;//路线规划的绘制工具


aMap = mapView.getMap();
setUpMap();
mRouteOverLay = new RouteOverLay(aMap, null);  //实例化绘制工具

在导航成功函数里@Override
public void onCalculateRouteSuccess() {
// TODO Auto-generated method stub
} 里实现
AMapNaviPath naviPath = mapNavi.getNaviPath();
if (naviPath == null) {
return;
}
// 获取路径规划线路,显示到地图上
mRouteOverLay.setRouteInfo(naviPath);
mRouteOverLay.addToMap();


第(5)将介绍导航界面的实现
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值