谷歌地图 | 与 Android 版导航 SDK 集成的最佳实践

谷歌最近宣布了导航 SDK,它可以让您将熟悉的 Google 地图逐向导航体验无缝集成到您的 Android 和 iOS 应用程序中。

这篇博文概述了一些最佳实践,您可以使用这些实践为您的 Android 应用程序使用导航 SDK 构建流畅、一致且可靠的导航体验。

与导航地图交互

与 Navigation SDK 集成时,您可以使用++SupportNavigationFragment++ ( 的包装器)++NavigationView++ ,也可以直接与 交互NavigationView。在大多数情况下,我们建议使用SupportNavigationFragmentNavigationView处理SupportNavigationFragment生命NavigationView周期回调,因此您无需自行管理它们。但是,如果您确实需要与 交互NavigationView,请谨慎管理生命周期方法和事件。

最佳实践

  • 尽可能使用SupportNavigationFragment而不是。NavigationView
  • 如果使用NavigationView,则在调用生命周期方法时使用严格排序。
  • 如果使用NavigationView,则从活动或片段调用生命周期事件,而不是同时从两者调用。

有关更多信息,请参阅导航 SDK 开发人员文档中的++导航地图交互。++

管理导航通知

无论用户是否设置了目的地,导航 通知都会在用户导航时显示,有助于确保位置更新的准确性。应用必须管理 Android 对从后台启动前台服务和从后台访问位置的限制,以最大限度地提高位置准确性、最大限度地减少电池消耗并避免内存泄漏。

最佳实践

有关更多信息,请参阅导航 SDK 开发人员文档中的++后台位置使用情况。++

GoogleMap与物体交互

除了允许您向应用添加导航体验之外,Android 版导航 SDK 还包含来自++Android 版地图 SDK++ 的非导航地图功能。非导航地图可通过++GoogleMap++ 类访问。APIGoogleMap允许您创建自定义地图体验,包括绘制多边形、自定义图标等。在GoogleMap应用中实现功能时,务必将非导航地图与导航地图分开,并管理GoogleMap与导航体验相关的生命周期。

最佳实践

  • GoogleMap在与导航体验不同的地图实例上实现功能。
  • 用于getMapAsync获取GoogleMap实例。

有关更多信息,请参阅导航 SDK 开发者文档中的++GoogleMap 交互。++

清理实例

清除不再需要的实例和会话对于避免内存泄漏和其他问题非常重要。特别是,一定要清除导航目的地并清理 GoogleMap 对象上的地图元素。

最佳实践

有关更多信息,请参阅导航 SDK 开发人员文档中的++实例清理。++

其他建议

除了上面描述的实施最佳实践之外,以下建议还可以帮助确保您及时了解最新的导航 SDK 开发情况:

++开始与导航 SDK 集成++ 。 ++查看导航 SDK API 文档和参考++。您可以遵循这些最佳实践,帮助确保您的用户获得流畅、可靠的导航体验。

如果您想了解更多谷歌地图的新功能套件或者想立即集成到您的应用中,请立即联系谷歌地图一级代理商 Cloud Ace云一

电话:0755-26410916 邮箱:zixun@cloud-ace.com

相关推荐
惜.己19 小时前
Jmeter中的断言(二)
测试工具·jmeter·1024程序员节
西电研梦1 天前
考研倒计时30天丨和西电一起向前!再向前!
人工智能·考研·1024程序员节·西电·西安电子科技大学
惜.己1 天前
Jmeter中的断言(四)
测试工具·jmeter·1024程序员节
·云扬·2 天前
Java IO 与 BIO、NIO、AIO 详解
java·开发语言·笔记·学习·nio·1024程序员节
网安_秋刀鱼2 天前
PHP代码审计 --MVC模型开发框架&rce示例
开发语言·web安全·网络安全·php·mvc·1024程序员节
HUODUNYUN2 天前
小程序免备案:快速部署与优化的全攻略
服务器·网络·web安全·小程序·1024程序员节
惜.己2 天前
Jmeter的后置处理器(二)
测试工具·github·1024程序员节
惜.己2 天前
Jmeter中的断言(一)
测试工具·jmeter·1024程序员节
cainiao0806053 天前
《物理学进展》
1024程序员节·核心期刊·知网期刊·职称评审
FFDUST3 天前
C++ —— string类(上)
c语言·开发语言·数据结构·c++·stl·1024程序员节