uni-app iOS展示高德地图闪退
uni-app iOS展示高德地图闪退
示例代码:
<map style="height: calc(100vh - 606px);" ></map>
操作步骤:
启动app,进入地图页面,杀掉app,启动app,进入地图页面(几率性崩溃)
预期结果:
正常显示
实际结果:
几率性崩溃
bug描述:
启动app展示高德地图几率性崩溃。如果首次正常显示,之后进入页面正常。
bug.txt
3 回复
使用HX内置基座测试有没有问题?
有,即使使用Hello演示项目也会出现。 1、创建Hello演示项目, 2、删除/pages/component/map/map.nvue文件(使用vue文件) 3、/pages/component/map/map.vue第6行map标签增加样式:style=“height: calc(100vh - 606px);” 4、运行到iOS模拟器:iPhone8 5、点击到地图页面,闪退(初次显示地图几率性闪退。如果正常,则点击“停止运行”,然后再点击“重新运行”,使app重新启动)
在 uni-app 中使用高德地图时,如果 iOS 平台出现闪退问题,可能是由于以下原因导致的。以下是一些常见的排查和解决方法:
1. 检查高德地图 SDK 配置
- 确保 SDK 版本正确:高德地图 SDK 需要与 uni-app 的版本兼容,确保使用的是最新版本。
- 检查 AppKey 配置:在
manifest.json
中,确保高德地图的 AppKey 配置正确。示例:"app-plus": { "maps": { "amap": { "ios": "YOUR_IOS_APP_KEY" } } }
- 检查 Bundle Identifier:高德地图的 AppKey 与 iOS 项目的 Bundle Identifier 绑定,确保两者一致。
2. 检查权限配置
- 添加必要的权限:在
manifest.json
中,确保添加了以下权限:"permissions": { "ios": { "NSLocationWhenInUseUsageDescription": "需要获取您的位置信息" } }
- 检查 Info.plist 文件:确保
Info.plist
文件中添加了以下权限描述:<key>NSLocationWhenInUseUsageDescription</key> <string>需要获取您的位置信息</string>
3. 检查地图组件使用
- 确保地图组件正确使用:在页面中使用
<map>
组件时,确保provider
属性设置为amap
。示例:<map id="map" :provider="'amap'" :latitude="latitude" :longitude="longitude"></map>