由于这个uniapp的Android端属于接盘项目,我之前并不清楚做了什么,基座也是旧的,调用定位功能时就报
这个错,我一开始还以为是缺少权限什么的,正好uniapp群里也有人报这个错,被人误导就在HBuilderX的uniapp的manifest.json中兜兜转转,完全解决不了。后来仔细看来这个参考链接才知道,原来是基座里面少添加东西了!!难怪调用不了定位功能。
1、当然第一步配置manifest.json还是必须的:
两个定位权限是必须的:
2、最关键的并不是uniapp中的这些权限什么的,而是基座中的配置:
https://nativesupport.dcloud.net.cn/UniMPDocs/UseModule/android/geolocation
最详细的要看这个官方文档里的内容,不得不说,官方把这个链接藏得真深,找都找不到。
我的Android基座(HBuilderX)版本是2.6.16:
在app的libs文件夹下添加geolocation-amap-release.aar和amap-libs-release.aar
3、然后就是官网截图的Androidmanifest.xml
4、dcloud_properties.xml中添加feature:
<feature name="Geolocation" value="io.dcloud.js.geolocation.GeolocationFeatureImpl"/>
这篇博客本来应该在5月21日就发了,结果因为项目实在太忙,鸽到现在才发,可能有东西遗漏,按照以上配置应该就能解决这个报错,如果还是有问题,请及时在下方评论,谢谢!!