预置条件

请在您工程的 AndroidManifest.xml 中配置声明导航组件 Activity:

android:name="com.amap.api.navi.AmapRouteActivity"

android:theme="@android:style/Theme.NoTitleBar"

android:configChanges="orientation|keyboardHidden|screenSize|navigation" />

无起终点启动导航组件

通过AmapNaviPage来启动导航组件,它是一个单例:

//构建导航组件配置类,没有传入起点,所以起点默认为 “我的位置”

AmapNaviParams params = new AmapNaviParams(null, null, null, AmapNaviType.DRIVER, AmapPageType.ROUTE);

//启动导航组件

AmapNaviPage.getInstance().showRouteActivity(getApplicationContext(), params, null);

传入起终点启动导航组件

通过设置起点、途径点(最多支持三个)、终点启动导航组件;每个点数据可以通过经纬度、名称、高德 POIId 来描述,其参数规则如下:经纬度数据为必填参数;

名称是可选参数仅用于显示地点名称,如果设置了名称参数,会优先显示所设置的名称,如果不传名称将使用默认值,如“终点”、“途径点1”;

高德 POIId 是可选参数,但强烈建议传入,因为其可以有效的减少绕路情况的出现。设置高德 POIId 来启动导航组件时,将会执行 POI 的精确检索,获得 POI 详情后不仅会辅助算路,也会覆盖传入的经纬度和名称两个参数。

当不设置起点信息时,会采用用户当前位置作为起点,并显示地点名称为“我的位置”。

//起点

Poi start = new Poi("北京首都机场", new LatLng(40.080525,116.603039), "B000A28DAE");

//途经点

List poiList = new ArrayList();

poiList.add(new Poi("故宫", new LatLng(39.918058,116.397026), "B000A8UIN8"));

//终点

Poi end = new Poi("北京大学", new LatLng(39.941823,116.426319), "B000A816R6");

// 组件参数配置

AmapNaviParams params = new AmapNaviParams(start, poiList, end, AmapNaviType.DRIVER, AmapPageType.ROUTE);

// 启动组件

AmapNaviPage.getInstance().showRouteActivity(getApplicationContext(), params, null);

退出导航组件

导航组件调起之后,用户可以点击“路径规划页面”左上角的回退按钮来退出导航组件,开发者也可以根据需要调用如下函数退出导航组件。

//退出导航组件

AmapNaviPage.getInstance().exitRouteActivity();

导航组件回调方法说明

INaviInfoCallback接口中提供了一系列回调方法,可以实现该接口后,将回调实例通过启动组件方法的最后一个参数传入,关键回调如下(注意:使用导航组件以后,任然可以使用AMapNavi注册导航回调,监听更多导航信息)

/**

* 导航播报信息回调函数。

*

* @param s 播报文字。

* @since 5.2.0

*/

void onGetNavigationText(String s);

/**

* 当GPS位置有更新时的回调函数。

*

* @param location 当前位置的定位信息。

* @since 5.2.0

*/

void onLocationChange(AMapNaviLocation location);

/**

* 退出组件或退出组件导航的回调函数

* @param pageType 参见{@link com.amap.api.navi.enums.PageType}

* @since 5.6.0

*/

void onExitPage(int pageType);

/**

* 策略选择界面中切换算路偏好回调

* @param strategy 切换后偏好 参见{@link com.amap.api.navi.enums.PathPlanningStrategy}

* @since 6.0.0

*/

void onStrategyChanged(int strategy);

/**

* 获取导航地图自定义View,该View在导航整体界面的下面,注意要设置setLayoutParams并且设置高度

* @return View

* @since 6.1.0

*/

View getCustomNaviBottomView();

/**

* 获取导航地图自定义View,该View在导航界面的当前路名位置,使用该方法以后,将不会显示当前路名

* @return View

* @since 6.1.0

*/

View getCustomNaviView();

/**

* 组件地图白天黑夜模式切换回调

* @param mapType 枚举值参考AMap类, 3-黑夜,4-白天

* @since 6.7.0

*/

void onMapTypeChanged(int mapType);

/**

* 获取导航地图自定义View,该View在导航界面的垂直居中,水平靠左位置

* @return View

* @since 6.9.0

*/

View getCustomMiddleView();

/**

* 导航视角变化回调

* @since 7.1.0

* @param naviMode 导航视角, 1-正北朝上模式 2-车头朝上状态

*/

void onNaviDirectionChanged(int naviMode);

/**

* 昼夜模式设置变化回调

* @since 7.1.0

* @param mode 0-自动切换 1-白天 2-夜间

*/

void onDayAndNightModeChanged(int mode);

/**

* 播报模式变化回调

* @since 7.1.0

* @param mode 1-简洁播报 2-详细播报 3-静音

*/

void onBroadcastModeChanged(int mode);

/**

* 比例尺智能缩放设置变化回调

* @since 7.1.0

* @param enable 是否开启

*/

void onScaleAutoChanged(boolean enable);

android 地图导航开发思路,基础功能-导航组件-开发指南-Android 导航SDK | 高德地图API...相关推荐

  1. 高德sdk定位当前位置_单次定位-获取位置-开发指南-iOS 定位SDK | 高德地图API

    iOS定位SDK提供的单次定位方法基于苹果定位核心,苹果定位核心会在设备移动时连续返回定位结果,高德在此基础上封装了单次定位.当设备可以正常联网时,还可以返回该定位点的对应的中国境内位置信息(包括:省 ...

  2. ios 高德获取定位_单次定位-获取位置-开发指南-iOS 定位SDK | 高德地图API

    iOS定位SDK提供的单次定位方法基于苹果定位核心,苹果定位核心会在设备移动时连续返回定位结果,高德在此基础上封装了单次定位.当设备可以正常联网时,还可以返回该定位点的对应的中国境内位置信息(包括:省 ...

  3. vue使用高德地图画电子围栏_地理围栏-辅助功能-开发指南-iOS 定位SDK | 高德地图API...

    以下内容自 iOS 定位SDK V2.3.0 后支持. 第 1 步,引入头文件 在调用地理围栏功能的类中引入AMapFoundationKit.h和AMapLocationKit.h这两个头文件,注意 ...

  4. 设置电子围栏 高德地图_地理围栏-辅助功能-开发指南-iOS 定位SDK | 高德地图API...

    以下内容自 iOS 定位SDK V2.3.0 后支持. 第 1 步,引入头文件 在调用地理围栏功能的类中引入AMapFoundationKit.h和AMapLocationKit.h这两个头文件,注意 ...

  5. 高德离线地图开发 java_使用离线地图-创建地图-开发指南-Android 地图SDK | 高德地图API...

    高德3D 地图 SDK支持离线地图功能.(2D 地图 SDK 不支持离线地图功能) 离线地图可满足在无网络环境下查看地图信息的需求,在设备本地有离线地图数据的情况下,SDK 会优先加载离线地图. 离线 ...

  6. 教育直播系统开发的基础功能

    目前,网络直播系统应用领域非常广泛,例如教育行业.电子商务.企业员工培训.直播游戏等都能寻找到视频直播系统的踪迹.特别是在新冠疫情的影响下,线上教学方式受到了各种高等院校及其培训学校的欢迎,缩短了老师 ...

  7. 高德离线数据api_使用离线地图-创建地图-开发指南-iOS 地图SDK | 高德地图API

    高德3D 地图 SDK支持离线地图功能.(2D 地图 SDK 不支持离线地图功能) 离线地图可满足在无网络环境下查看地图信息的需求,在设备本地有离线地图数据的情况下,SDK 会优先加载离线地图. 离线 ...

  8. ios 高德获取定位_更新日志-iOS 定位SDK | 高德地图API

    高德地图iOS 定位 SDK V2.6.7            2020-08-28 1.适配iOS14定位权限:新增"模糊定位"权限下的兼容策略: 2.修复bug,提升性能和稳 ...

  9. 高德地图android 测试,平行路检测-专业导航-开发指南-Android 导航SDK | 高德地图API...

    基本介绍 导航SDK从v6.6.0开始,平行路检测支持"主辅路状态检测"和"高架桥上下状态检测".当用户所在的位置,具有两条相邻的平行路,如城市快速路的主干道和 ...

最新文章

  1. 【自然语言处理】hmm隐马尔可夫模型进行中文分词 代码
  2. 划词翻译软件QTranslate 6.7.3 中文绿色版
  3. 数据库db_files参数增大怎么办
  4. python3.4.4 配置opencv3.1 解决pip版本不够的问题
  5. Mac 解决brew一直卡在Updating Homebrew
  6. Excel-在整个工作簿中查找/替换
  7. 从工程文化和运维理念理解Netflix
  8. Python之%s%d%f使用实例
  9. SSLOJ 1351.矩形反色
  10. Java同步关键字的C#版本?
  11. 从0到1实现VueUI库思路
  12. 信息收集知识及工具梳理
  13. 从零开始pytorch手写字母识别
  14. 关于新APP,从交底书入手
  15. 计算机局域网访问受限制,电脑本地连接受限制的处理方法
  16. php validate,jQuery Validate | 菜鸟教程
  17. Window系统电脑登录过个微信方法,微信多开(实测)
  18. linux下删除以-开头的文件
  19. AVI的音视频编码格式
  20. 【GAT】如何理解Graph Attention Network(注意力机制)?

热门文章

  1. html中content属性,CSS content 属性 | 菜鸟教程
  2. 网络工程期末复习 - 20190630
  3. 视频时代,大曝光+深触达,今日头条推广·炫屏助力品牌吸引消费者
  4. 【免费报名】亚洲诚信看雪学院:“走进企业看安全”技术分享沙龙等你来侃~...
  5. iOS QQ第三方登实现
  6. TypeError: can only concatenate str (not “list“) to str(报错解决办法)
  7. js 传入字符串,转换成日期类型,如果转换失败返回null
  8. 【1月每日一题】leetcode Java + c++版 (12 完结)
  9. ubuntu移除windows启动项
  10. android计算器布局