更新记录
2.5.2(2023-01-18)
1、修复了部分机型无法发送常驻通知的问题
2、uniapp离线sdk更新到:2023年01月12日发布——HBuilderX(3.6.17.20230112)
2.5.1(2022-06-15)
1、新增permanentNotice方法 发送常驻通知栏
2.5.0(2022-04-14)
HBuilderX 3.2.5版本之后适配了AndroidX,升级时需要参考文档重新配置 插件也升级适配了AndroidX
查看更多平台兼容性
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原生插件配置”->”云端插件“列表中删除该插件重新选择
监听通知栏消息
代码演示
<template>
<view>
{{msg}}
<view>
<view v-for="(item, index) in list" :key="index">
<text>监听到内容:{{item.content}}</text><br><text>监听到标题:{{item.title}}</text>
<br /><hr />
</view>
</view>
<button type="default" @click="init">初始化</button>
<button type="default" @click="test">是否开启获取通知权限</button>
<button type="default" @click="set">跳转到设置界面</button>
<button type="default" @click="start">开始监听</button>
<button type="default" @click="permanentNotice">发送常驻通知栏</button>
<button type="default" @click="clear">清空列表记录</button>
<button type="default" @click="cancelAll">清空所有通知栏消息</button>
<button type="default" @click="isIgnoringBatteryOptimizations">是否设置白名单</button>
<button type="default" @click="requestIgnoreBatteryOptimizations">去设置白名单</button>
</view>
</template>
<script>
const NoticeBarModule = uni.requireNativePlugin('lu-NoticeBarModule');
export default {
data() {
return {
msg: '收到的通知内容会展示在这里',
list: []
}
},
onLoad() {},
methods: {
init() {
//初始化 <-- 需要初始化一下 然后调用一次start方法即可 多次调用也无所谓不影响。
NoticeBarModule.init();
},
clear() {
this.list = [];
},
test() {
//var res = NoticeBarModule.readNotificationBar(e => {
// this.msg = JSON.stringify(e)
// uni.showToast({
// title: JSON.stringify(e),
// icon: 'none'
// });
//});
//新版本改为同步
//TODO: 是否开启获取通知栏内容权限已改成同步返回。 1.0.2版本
let res = NoticeBarModule.readNotificationBar();
if (res) {
//开启
uni.showToast({
title: '开启',
icon: 'none'
});
} else {
//未开启
uni.showToast({
title: '未开启',
icon: 'none'
});
}
},
set() {
NoticeBarModule.toSetting();
},
//清空所有通知栏 (清空所有可以清空的通知栏,常驻通知栏无法清空) 必须授权才能调用此函数 否则会抛异常
cancelAll() {
NoticeBarModule.cancelAll(); //无任何返回值
},
start() {
let _this = this;
NoticeBarModule.getNotification(e => { //<-- e 就是监听到的通知栏消息
_this.list.push(e);
console.log(JSON.stringify(e));
uni.showToast({
title: JSON.stringify(e),
icon: 'none'
});
});
},
isIgnoringBatteryOptimizations() {
let res = NoticeBarModule.isIgnoringBatteryOptimizations();
if (res) {
//开启
uni.showToast({
title: '已开启白名单',
icon: 'none'
});
} else {
//未开启
uni.showToast({
title: '未开启白名单',
icon: 'none'
});
}
},
requestIgnoreBatteryOptimizations() {
//申请加入白名单 没有任何回调
NoticeBarModule.requestIgnoreBatteryOptimizations()
},
//等下一个版本 permanentNotice方法暂时有问题
permanentNotice() {
NoticeBarModule.permanentNotice({
//状态栏标题
ticker: "状态栏标题", //必填
//通知ID
notifyId: 1, //int类型
//通知标题
title: "通知标题", //必填
//通知的内容
content: "通知的内容" //必填
});
},
}
}
</script>
<style>
</style>
插件说明
自动监听通知栏推送消息,返回消息标题内容接收时间包名
可以实现`拦截功能`,加群咨询
插件方法
方法名 | 返回值 | 说明 |
---|---|---|
init() | 无 | 初始化方法 |
readNotificationBar() | 值布尔 | 是否获取通知栏权限 true已经获取 false未获取 1.0.2版本已改为同步 |
toSetting() | 无 | 跳转到设置界面 |
getNotification() | json对象 | 开始监听通知栏内容 回调方法可以获取到监听到的内容 只需要调用一次即可 |
isIgnoringBatteryOptimizations | 值布尔 | 是否开启白名单:true已开启 false未开启 |
requestIgnoreBatteryOptimizations | 无 | 去设置白名单 |
cancelAll() | 无 | 清空通知栏消息(包括其他apk发送的消息)2.3版本增加 |
permanentNotice() | 无(2.5.1版本添加) | 发送一个常驻的通知栏(下一个版本优化) |
其他说明
如果需要再虚拟机或模拟器运行,请打包的时候务必勾选CPU支持类型x86
插件获取微信、QQ、支付宝收款、微信收款、短信内容均可监听到。
`拦截功能`功能请看插件说明
监听微信公众号消息联系作者QQ:`2310325773` (备注监听公众号消息)
白名单功能不能保证app百分百后台运行不会杀死。不适配6以下的安卓系统。但是依旧可以安装,6以下系统调用isIgnoringBatteryOptimizations方法永远返回false。
调用requestIgnoreBatteryOptimizations会弹出(弹窗提醒)提示手机不支持。
如果有问题请看下方的作者联系方式: 备注uni插件
👇👇👇👇👇👇👇
QQ交流群:263173204
备注uni插件😉
其他插件推荐
更多插件推荐
https://ext.dcloud.net.cn/plugin?id=7961 (文件类)
https://ext.dcloud.net.cn/plugin?id=5660 (短信类)