更新记录
1.0.0(2023-05-22)
自定义通知栏通知安卓原生插件,支持进度条通知、普通通知,支持文字颜色自定义 插件首次提交
平台兼容性
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原生插件配置”->”云端插件“列表中删除该插件重新选择
自定义通知栏通知安卓原生插件,支持进度条通知、普通通知,支持文字颜色自定义
-
支持Android平台使用
-
插件特性:
1、提供了安卓通知栏进度条通知样式(可用于在通知栏显示下载进度)、普通通知(普通文字通知)。 2、通知文字颜色可自定义。 3、进度条颜色提供red、green、blue三种可选值(后续会持续增加)。
-
函数说明
序号 | 函数名称 | 函数说明 |
---|---|---|
1 | addCallback(function callback) | 结果回调函数 |
2 | showNotify(String json) | 显示通知,参数详见下方说明 |
3 | createPushChannel(String json) | 创建通知通道(OPPO消息推送私信需要),参数详见下方说明 |
-
showNotify(String json)函数说明
该函数为显示通知函数,根据json参数中notifyStyle的值设置是显示普通通知还是进度通知, json参数格式如下: 1、作为进度通知样式的参数格式: { notifyStyle: 'progress', //通知样式,可选值 progress/normal params: { id: 22,//通知id,id相同则后面的覆盖之前的,id不同时则表示为新的通知(不传则默认为同一个id) title: '正在下载...', //通知标题(必填参数) titleColor: '#FF00FF', //标题文字颜色,默认为黑色 max: 100, //进度条最大值 progress: progress, //当前进度值 showRightText: false, //是否显示进度条右边百分比文字(默认为true),例:50% showRightTextColor: '#0000FF', //进度条右边文字颜色 progressColor: 'red' //进度条颜色 ,可选值 red/green/blue,默认为green } } 2、作为普通通知样式的参数格式: { notifyStyle: 'normal', //通知样式,可选值 progress/normal params: { id: 33,//通知id,id相同则后面的覆盖之前的,id不同时则表示为新的通知(不传则默认为同一个id) title: '普通通知测试', //通知标题(必填参数) titleColor: '#87CEFA', //标题文字颜色,默认为黑色 content: '普通通知内容', //通知内容(必填参数) contentColor: '#DAA520', //内容文字颜色,默认黑色 } }
-
createPushChannel(String json)函数说明
该函数为创建通知通道函数(OPPO消息推送私信需要), json参数格式如下: { channelId:'test_channel_id', //通道id,使用者自定义(必填参数) channelName:'测试通知通道名称', //(必填参数) channelDescription:'测试通知通道描述' //(必填参数) }
-
结果回调函数code值说明
序号 code值 说明 1 -1 错误码,详细错误信息请查看返回结果 2 1 点击通知栏通知,此时会返回调用showXXX函数传递的json参数 -
使用示例
<template> <view class="uni-column"> <button @click="progressNotice()">进度条通知(进度条右边显示百分比)</button> <button @click="progressNotice1()">进度条通知(进度条右边无百分比)</button> <button @click="normalNotice()">普通通知</button> <button @click="createPushChannel()">创建通知通道</button> </view> </template> <script> const notificationModule = uni.requireNativePlugin("jushi-notification") export default { data() { return { timer: null, timer1: null } }, created() { notificationModule.addCallback(res => { console.log('结果回调:' + res) }) }, methods: { progressNotice() { if (this.timer != null) { return } let that = this var progress = 0 this.timer = setInterval(() => { //模拟下载进度 notificationModule.showNotify({ notifyStyle: 'progress', //通知样式,可选值 progress/normal params: { id: 2,//通知id,id相同则后面的覆盖之前的,id不同时则表示为新的通知(不传则默认为同一个id) title: '正在下载', //通知标题(必填参数) titleColor: '#FF00FF', //标题文字颜色,默认为黑色 max: 100, //进度条最大值 progress: progress, //当前进度值 showRightText: true, //是否显示进度条右边百分比文字(默认为true),例:50% showRightTextColor: '#0000FF', //进度条右边文字颜色 progressColor: 'blue' //进度条颜色 ,可选值 red/green/blue,默认为green } }) if (progress == 100) { clearInterval(this.timer) this.timer = null return } progress++ }, 500) }, progressNotice1() { if (this.timer1 != null) { return } let that = this var progress = 0 this.timer1 = setInterval(() => { //模拟下载进度 notificationModule.showNotify({ notifyStyle: 'progress', //通知样式,可选值 progress/normal params: { id: 22,//通知id,id相同则后面的覆盖之前的,id不同时则表示为新的通知(不传则默认为同一个id) title: '正在下载...', //通知标题(必填参数) titleColor: '#FF00FF', //标题文字颜色,默认为黑色 max: 100, //进度条最大值 progress: progress, //当前进度值 showRightText: false, //是否显示进度条右边百分比文字(默认为true),例:50% showRightTextColor: '#0000FF', //进度条右边文字颜色 progressColor: 'red' //进度条颜色 ,可选值 red/green/blue,默认为green } }) if (progress == 100) { clearInterval(this.timer1) this.timer1 = null return } progress++ }, 500) }, normalNotice() { //普通通知使用示例 notificationModule.showNotify({ notifyStyle: 'normal', //通知样式,可选值 progress/normal params: { id: 33,//通知id,id相同则后面的覆盖之前的,id不同时则表示为新的通知(不传则默认为同一个id) title: '普通通知测试', //通知标题(必填参数) titleColor: '#87CEFA', //标题文字颜色,默认为黑色 content: '普通通知内容', //通知内容(必填参数) contentColor: '#DAA520', //内容文字颜色,默认黑色 } }) }, createPushChannel() { //创建通知通道(OPPO消息推送私信需要,私信不限数量) notificationModule.createPushChannel({ channelId: 'test_channel_id', //通道id,使用者自定义 channelName: '测试通知通道名称', channelDescription: '测试通知通道描述' }) } } } </script> <style> .uni-column { display: flex; flex-direction: column; } button { margin: 40rpx; } </style>
-
示例应用下载
其它插件
安卓原生插件
-
UTS插件
-
前端插件