⚠️ 注意:请妥善保管您的Key,每个Key有每日调用限额
更新详细内容可以参考鸿蒙地图SDK配置Key的过程
// 在module的oh-package.json5中添加依赖
"dependencies": {
"@tencentmap/nav-ui": "1.0.0",
"@tencentmap/nav": "1.0.0"
}
// 在module.json5中添加权限配置
"requestPermissions": [
{
"name": "ohos.permission.GET_NETWORK_INFO"
},
{
"name": "ohos.permission.GET_WIFI_INFO",
},
{
"name": "ohos.permission.INTERNET"
},
{
"name": "ohos.permission.APPROXIMATELY_LOCATION",
"reason": "$string:fuzzy_location_permission",
"usedScene": {
"abilities": [
"EntryAbility"
],
"when": "inuse"
}
},
{
"name": "ohos.permission.LOCATION",
"reason": "$string:location_permission",
"usedScene": {
"abilities": [
"EntryAbility"
],
"when": "inuse"
}
},
{
"name": "ohos.permission.LOCATION_IN_BACKGROUND",
"reason": "$string:Harmony_navi_permission_reason",
"usedScene": {
"when": "always"
}
},
{
"name": "ohos.permission.KEEP_BACKGROUND_RUNNING",
}
]
import {
LatLng,
MapController,
NavContext,
NavMapComponent,
NavSDK,
NavSearchPoint,
TravelMode
} from "@tencentmap/nav";
import { NavUI } from "@tencentmap/nav-ui";
@Entry
@Component
export struct QuickStartPage {
mapController?: MapController
navContext?: NavContext
aboutToAppear(): void {
// 设置用户隐私协议同意状态
NavSDK.setUserAgreedPrivacy(true)
// 设置key
NavSDK.Init({
developerKey: "your key"
})
// 获取导航上下文实例
this.navContext = NavSDK.getNavContext();
}
}
build() {
RelativeContainer() {
// 添加地图组件
NavMapComponent({
onReady: (error, mapController: MapController) => {
this.mapController = mapController
this.quickStart();
}
})
// 添加导航UI组件
NavUI({
navContext: this.navContext
}).hitTestBehavior(HitTestMode.Transparent)
}
}
async quickStart() {
if (!this.mapController || !this.navContext) return;
// 设置起点(中关村第三极大厦)
const start: NavSearchPoint = {
poi: {
latLng: new LatLng(39.984105, 116.307499),
poiId: "3629720141162880123",
name: "中关村第三极大厦"
}
}
// 设置终点(腾讯北京总部大楼)
const end: NavSearchPoint = {
poi: {
latLng: new LatLng(40.040417, 116.273514),
poiId: "3232643565056451135",
name: "腾讯北京总部大楼"
}
}
// 搜索驾车路线
const routeRes = await this.navContext.searchRoute({
travelMode: TravelMode.TravelModeDriving,
start: start,
end: end,
})
// 开始导航
this.navContext.startNav(this.mapController, routeRes.routes[0].routeId);
}
鉴权失败:
无地图显示:
有帮助
没帮助