HarmonyOS 鸿蒙ArkTS如何打开高德地图导航功能

发布于 1周前 作者 vueper 来自 鸿蒙OS

HarmonyOS 鸿蒙ArkTS如何打开高德地图导航功能

【关键字】

鸿蒙应用开发、ArkTS、拉起高德地图、打开导航

1、写在前面

在应用开发的过程中,可能会遇到过这样的需求,拉起第三方导航应用,比如点击某个按钮直接跳转到高德地图导航的页面,那这个需求在鸿蒙中该如何实现呢?

2、解决方案

对于这个需求,其实实现起来也很简单,通过deeplink的方式,在ArkTS中通过startAbility来拉起应用。

首先我们先找到高德地图导航的开发指南:

https://lbs.amap.com/api/amap-mobile/guide/android/navigation

核心点就是这个链接:

cke_331.png

然后来写一个跳转到高德地图导航页面的方法:

jumpGaode() {
let context = getContext(this) as common.UIAbilityContext
context.startAbility({
uri: “androidamap://navi?sourceApplication=appname&lat=” + this.latitude + “&lon=” + this.longitude + “&dev=1”,
action: “android.intent.action.VIEW”
})
}<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

接着在页面中进行测试:

Button(‘打开高德地图’)
.onClick(() => {
this.jumpGaode()
})
.margin({ top: 50 })
.width(200).height(45)<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

完整代码如下:

cke_4580.png

最后来看一下实现的效果:

12 回复
我觉得常见的普遍的使用场景,应该是应用内嵌地图,导航等相关功能在该应用内完成,而不是跳到第三方应用。请问这些场景,目前在api 9上有解决方案么?

api9应用内开发的话,暂时没有可用的SDK。如果有相关的JS实现,嵌入JS是一种解决方式。

找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17

目前在鸿蒙上用java可以实现应用内嵌地图,导航等相关功能吗?

next preview2下无法打开,提示“暂无支持此类文件的应用”

我也是这个问题

鸿蒙下如何判断手机是否安装了高德地图APP?

HarmonyOS 鸿蒙ArkTS打开高德地图导航功能,可通过deeplink方式实现。首先确保已获取高德地图的导航URL模板,并在ArkTS中编写方法,通过startAbility API传入高德地图的URI和action。URI中需包含导航所需参数,如经纬度等。此方法可直接从应用内拉起高德地图进行导航。如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部