更新记录
1.0.5(2022-09-21)
新增原生定位返回高德坐标和百度坐标,新增自定义定位时间间隔
1.0.4(2022-09-14)
新增原生定位,开机自启动(需手机给与自启动和并联启动权限)
1.0.3(2022-09-13)
修复部分机型闪退的bug
查看更多平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:5.0 - 12.0 | armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 | × |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
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像素保活,播放无声音频保活,多进程守护保活等等。感觉不如规规矩矩申请厂商权限来的实惠些。 经十几种机型测试,插件给与(自启动,并联启动,后台运行)权限后可以很好的保活。请自行测试后再购买!!! 如需流氓式保活请看最底下介绍。
1.0.5新增原生定位返回高德坐标和百度坐标,新增自定义定位时间间隔 1.0.4新增原生定位和开机自启动,开机自启动需包名支持和手机给与(自启动和并联启动权限)
插件使用方法:
引入插件:
const m = uni.requireNativePlugin("RC-KeepAlive")
打开定位
"LocTime":定位时间间隔,单位秒,插件默认为10秒。 "LocType":返回坐标的类型,支持国际通用标准坐标"WGS-84",高德系坐标"GCJ-02",百度系坐标"DB-09",插件默认为"WGS-84"。
m.openLocation({
"LocTime": 10,
"LocType": "GCJ-02"
})
关闭定位
m.closeLocation()
定位信息监听
默认10秒返回一次定位信息
const Location = uni.requireNativePlugin('globalEvent');
Location.addEventListener("MyLocation", (res) => {
console.log(res.Longitude) //经度
console.log(res.Latitude) //纬度
console.log(res.Address) //地址
console.log(res.Feature)//地址简写
console.log(res.LocalCity) //所属城市
});
申请通知权限:
小米,oppp,vivo等手机默认没有通知权限,可用此方法申请。
//无通知权限时打开通知权限设置,有权限时res返回1.
m.isNotification((res)=>{
console.log(res)
})
检查通知栏监听权限:
//res返回,有权限1,无权限0.
m.isMonitoringNotification((res) => {
if (res == 1) {
uni.showToast({
title: '已开启通知栏监听权限',
icon: 'none'
});
} else {
uni.showToast({
title: '未开启通知栏监听权限',
icon: 'none'
});
}
})
开启通知栏监听权限:
//打开设置通知栏监听页面,如已设置fes返回1.
m.OpenMonitoringNotification((res) => {
if (res == 1) {
uni.showToast({
title: '已开启通知栏监听',
icon: 'none'
});
}
})
开始监听:
m.OpenNotification((res) => {
if (res.NotificationStatus) {
uni.showToast({
title: '已开始监听:',
icon: 'none'
});
}
})
//成功后res返回
{
"NotificationStatus":true,
}
监听方法
onLoad() {
const globalEvent = uni.requireNativePlugin("RC-NoticeMonitoring")
plus.globalEvent.addEventListener("monitoring_notification", (e) => {
console.log(e);
});
},
打开悬浮窗权限:
//无权限时打开权限设置,有权限时res返回1.
m.openWindow((res) => {
if (res == 1) {
uni.showToast({
title: '已开悬浮窗权限',
icon: 'none'
});
}
})
厂商权限申请
//没有任何回调,大部分手机跳转到手机管家,部分手机跳转到应用权限设置。
m.OpenPermission()
电池白名单权限检查
//res返回1有权限,0无权限。
m.isBatteryOptimizations((res) => {
if (res == 1) {
uni.showToast({
title: '已开启电池优化白名单权限',
icon: 'none'
});
} else {
uni.showToast({
title: '未开启电池优化白名单权限',
icon: 'none'
});
}
})
申请电池优化白名单
//无权限时打开权限设置,有权限时res返回1.
m.OpenBatteryOptimizations((res) => {
if (res == 1) {
uni.showToast({
title: '已开启电池优化白名单',
icon: 'none'
});
}
})