更新记录

1.0.3(2021-07-23)

发布百度定位


平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 11.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 ×

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


插件解决的问题

1.解决app切换到后台之后无法定位的问题,支持海外全球定位,可以轻松为应用程序实现智能、精准、高效的定位功能

2.如果想解决 当 app切换到后台、锁屏之后,系统经常会杀死app,导致app无法进行后台定位的情况,可以配合以下保活插件使用,效果更好

第一款:保活插件限杀,黑屏效果一般

第二款,保活插件,黑屏增强款,黑屏不会进入睡眠,可实现持续获取定位

3.插件使用说明

1.初始化定位插件

const baiduloc = uni.requireNativePlugin('ljc-baiduloc');

2.判断是否有定位权限 (flag:false/true)

baiduloc.isLocationPermissions(function(res){
                    console.log(res)
                })

3.申请后台定位权限

baiduloc.requestLocationPermissions();

4.初始化百度定位,配置参数

参数:CoorType //可选,设置返回经纬度坐标类型,默认GCJ02
            //GCJ02:国测局坐标;
            //BD09ll:百度经纬度坐标;
            //BD09:百度墨卡托坐标;
            //海外地区定位,无需设置坐标类型,统一返回WGS84类型坐标

参数:openGps //可选,设置是否使用gps,默认false
//使用高精度和仅用设备两种定位模式的,参数必须设置为true
let options = {
                    model: 0, //  0代表高精度定位模式 1代表低功耗定位模式 2代表仅用设备定位模式
                    CoorType: "gcj02", //默认gcj02,设置返回的定位结果坐标系,如果配合百度地图使用,建议设置为bd09ll;
                    scanSpan: 2000, //可选,默认0,即仅定位一次,设置发起连续定位请求的间隔需要大于等于1000ms才是有效的
                    isNeedAddress: true, //可选,设置是否需要地址信息,默认不需要
                    isNeedLocationDescribe: false, //可选,设置是否需要地址描述
                    openGps: false //可选,默认false,设置是否开启Gps定位
                }

baiduloc.initLocationListener(options);

5.开启定位 返回定位监听回调

//如果定位 坐标出现5e-324,请先申请定位权限即可将解决,如果测试过程中返回信息次数重复(修改代码页面重启导致),项目重新运行即可
                baiduloc.startLocationListener(res => {
                    console.log(res);
                })

6.停止定位

baiduloc.stopLocationListener();

隐私、权限声明

1. 本插件需要申请的系统权限列表:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> <uses-permission android:name="android.permission.READ_LOGS"/> <!-- 允许访问振动设备 --> <uses-permission android:name="android.permission.VIBRATE"/> <uses-permission android:name="android.permission.WAKE_LOCK"/> <uses-permission android:name="android.permission.FOREGROUND_SERVICE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/>

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

https://map.baidu.com 使用百度后台定位;隐私协议链接地址:https://map.baidu.com/zt/client/privacy/index.html

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问