Uniapp 应用消息通知插件 Ba-Notify
应用消息通知插件 Ba-Notify
简介(下载地址)
Ba-Notify 是一款功能全面的uniapp应用消息通知插件,可在状态栏显示各种样式的消息提醒。
- 普通通知
- 大图通知(下拉看大图,右侧可带缩略图)
- 按钮通知(展开可设置两个按钮)
- HeadUp(右侧可带缩略图,展开可设置两个按钮)
- 消息盒子(同类消息汇总显示,右侧可缩略带图)
- 多行通知(文本较长收纳显示,点击可下拉展开)
- 进度通知(支持模糊、准确显示两种方式)
- 常驻通知模式(参数设置即可,autoCancel和ongoing)
可与原生插件 应用未读角标插件 Ba-Shortcut-Badge 搭配使用。 (文档)
截图展示
使用方法
在 script
中引入组件
const notify = uni.requireNativePlugin('Ba-Notify')
在 script
中调用
methods: {showNotify(notifyType) {//根据notifyType显示各种通知let content = 'content';let leftText = "左按钮";let rightText = "右按钮";let thumbUrl = "/storage/emulated/0/baidu/searchbox/downloads/c-ssl.duitang-3.jpeg";let bigUrl = "/storage/emulated/0/baidu/searchbox/downloads/c-ssl.duitang-3.jpeg";switch (notifyType) {case 0: //普通通知notify.show({'channelID': '0','channelName': '普通通知','ID': 0,'notifyType': notifyType,'ticker': 'Ticker','title': '普通通知','content': content,},(res) => {console.log(res)});break;case 1: //大图通知notify.show({'channelID': '1','channelName': '大图通知','ID': 1,'notifyType': notifyType,'ticker': 'Ticker','title': '大图通知','content': content,'thumbUrl': thumbUrl,'bigUrl': bigUrl,},(res) => {console.log(res)});break;case 2: //按钮通知notify.show({'channelID': '2','channelName': '按钮通知','ID': 2,'notifyType': notifyType,'ticker': 'Ticker','title': '按钮通知','content': content,'leftBtnText': leftText,'rightBtnText': rightText,},(res) => {console.log(res)});break;case 3: //HeadUpnotify.show({'channelID': '4','channelName': 'HeadUp','ID': 3,'notifyType': notifyType,'ticker': 'Ticker','title': 'HeadUp','content': content,'leftBtnText': leftText,'rightBtnText': rightText,'thumbUrl': thumbUrl},(res) => {console.log(res)});break;case 4: //消息盒子(mailbox)let msgList = ['消息1', '消息2', '消息3'];notify.show({'channelID': '4','channelName': '消息盒子','ID': 4,'notifyType': notifyType,'ticker': 'Ticker','title': 'mailbox','content': content,'thumbUrl': thumbUrl,'msgList': msgList},(res) => {console.log(res)});break;case 5: //多行通知content = "《一代人》\n" +"\n" +"\n" +"黑夜给了我黑色的眼睛\n" +"我却用它寻找光明";notify.show({'channelID': '5','channelName': '多行通知','ID': 5,'notifyType': notifyType,'ticker': 'Ticker','title': '多行通知','content': content,},(res) => {console.log(res)});break;case 6: //进度通知notify.show({'channelID': '6','channelName': '进度通知','ID': 6,'notifyType': notifyType,'ticker': 'Ticker','title': '进度通知','content': content,'maxProgress': 100,'progress': 10, //当前进度'indeterminate': false, //是否模糊进度显示'finishText': "下载完成"},(res) => {console.log(res)});break;default:break;}},isNotifyEnabled() { //是否打开通知权限notify.isNotifyEnabled((res) => {console.log(res)uni.showToast({title: 'isNotifyEnabled:' + res.isNotifyEnabled ? true : false,icon: "none"})});},goSetNotify() { //跳转到通知设置界面notify.goSetNotify();},clear() { //清空某类型消息notify.clear({'channelID': '0','channelName': 'channel_0','ID': 1,});},}
通知点击事件监听
在应用生命周期app.vue的onLaunch事件中设置监听:
onLaunch: function() {this.checkArguments();// 重点是以下: 一定要监听后台恢复 !一定要 plus.globalEvent.addEventListener('newintent', (e) => {this.checkArguments(); // 检测启动参数 });},onShow: function() {},onHide: function() {},methods: {checkArguments() {var args = plus.runtime.arguments;if (args) {let args1 = JSON.parse(args);if (args1.BaNotifyID) { //判断是否为通知传来的消息//这里写你的处理逻辑//args参数见“点击事件参数”console.log('args.BaNotifyID', args1.BaNotifyID);}// 处理args参数,如直达到某新页面等}},}
点击事件参数
属性名 | 说明 |
---|---|
BaNotifyChannelID | 你设置的该条通知的渠道ID |
BaNotifyChannelName | 你设置的该条通知的渠道名称 |
BaNotifyID | 你设置的该条通知的ID |
notifyType | 通知类型 |
Notify-Click | 通知点击事件,没有是点击整条消息;值是“leftBtn”:点击左侧按钮;值是“rightBtn”:点击右侧按钮; |
leftBtnText | 你设置的该条通知的左按钮文本 |
rightBtnText | 你设置的该条通知的右按钮文本 |
extend | 附加参数 |
示例:
{"BaNotifyID":"0","extend":"附加参数","notifyType":"0","BaNotifyChannelName":"普通通知","BaNotifyChannelID":"0"}
UI 图标设置
- 通知小图标:默认通知图标是Android的图标,如果需要使用自己的,在项目的 “nativeplugins\Ba-Notify\android\res\mipmap-xxhdpi” 目录下(没有就新建),添加 “ba_notify_icon.png” 图片文件即可。注意:更改后需要重新制作基座才能生效,建议提前配置。\color{#FF0000}{注意:更改后需要重新制作基座才能生效,建议提前配置。}注意:更改后需要重新制作基座才能生效,建议提前配置。
api 列表
方法名 | 说明 |
---|---|
show | 显示通知 |
isNotifyEnabled | 是否已打开通知权限 |
goSetNotify | 跳转到通知设置界面,去设置通知 |
clear | 清空某类型消息 |
方法 show 调用参数
属性名 | 类型 | 默认值 | 说明 |
---|---|---|---|
notifyType | Number | 0 | 0:普通通知 1:大图通知 2:按钮通知 3:HeadUp 4:消息盒子 5:多行通知 6:进度通知 |
channelID | String | “1” | 渠道Id |
channelName | String | “默认” | 渠道名称 |
ID | Number | 0 | 通知id |
isSound | Boolean | true | 声音 |
isVibrate | Boolean | true | 震动 |
isLights | Boolean | true | 闪光 |
ticker | String | 在顶部状态栏中的提示信息 | |
title | String | 设置通知中心的标题 | |
content | String | 设置通知中心中的内容 | |
thumbUrl | String | 缩略图本地绝对路径(大图通知、HeadUp通知、消息盒子) | |
bigUrl | String | 大图本地绝对路径(大图通知) | |
leftBtnText | String | 左侧按钮(按钮通知、HeadUp通知) | |
rightBtnText | String | 右侧按钮(按钮通知、HeadUp通知) | |
msgList | Array | 消息列表(消息盒子) | |
maxProgress | Number | 100 | 最大进度(进度通知) |
progress | Number | 0 | |
indeterminate | Boolean | false | 是否有准确的进度显示(进度通知) |
finishText | String | ‘’ | 完成后的显示(进度通知) |
autoCancel | Boolean | true | 点击通知,自动消失,默认 true |
ongoing | Boolean | false | 通知持续显示,侧滑不能删除,默认 false |
方法 clear 调用参数
属性名 | 类型 | 默认值 | 说明 |
---|---|---|---|
channelID | String | “1” | 渠道Id |
channelName | String | “默认” | 渠道名称 |
ID | Number | 0 | 通知id |
方法 isNotifyEnabled 返回参数
属性名 | 类型 | 说明 |
---|---|---|
isNotifyEnabled | Boolean | 是否已打开通知权限 |
系列插件
图片选择插件 Ba-MediaPicker (文档)
图片编辑插件 Ba-ImageEditor (文档)
文件选择插件 Ba-FilePicker (文档)
应用消息通知插件 Ba-Notify(文档)
应用未读角标插件 Ba-Shortcut-Badge (文档)
应用开机自启插件 Ba-Autoboot(文档)
扫码原生插件(毫秒级、支持多码)Ba-Scanner-G(文档)
扫码原生插件 - 新(可任意自定义界面版本;支持连续扫码;支持设置扫码格式)Ba-Scanner(文档)
动态修改状态栏、导航栏背景色、字体颜色插件 Ba-AppBar(文档)
原生sqlite本地数据库管理 Ba-Sqlite(文档)
安卓保活插件(采用多种主流技术) Ba-KeepAlive(文档)
安卓快捷方式(桌面长按app图标) Ba-Shortcut(文档)
自定义图片水印(任意位置) Ba-Watermark(文档)
最接近微信的图片压缩插件 Ba-ImageCompressor(文档)
视频压缩、视频剪辑插件 Ba-VideoCompressor(文档)
动态切换应用图标、名称(如新年、国庆等) Ba-ChangeIcon(文档)
原生Toast弹窗提示(可穿透所有界面) Ba-Toast(文档)
图片涂鸦、画笔 Ba-ImagePaint(文档)
pdf阅读(手势缩放、显示页数) Ba-Pdf(文档)
声音提示、震动提示、语音播报 Ba-Beep(文档)
Uniapp 应用消息通知插件 Ba-Notify相关推荐
- uni-app 全局消息通知弹窗(App端)
uni-app 全局消息通知弹窗(App端) 实现效果 实现一个顶部的全局消息通知,并且可以常驻,除非手动关闭. 效果图如下 收到告警通知 弹窗从顶部向下弹出,可点击跳转到对应页面,可上滑关闭弹窗,弹 ...
- uni-app开启消息通知
场景:uni-app开启移动app,如果用户没开启消息通知提示开启 因为uni-app升级到androidx,之前的android.support.v4.app.NotificationManager ...
- 小储云方糖消息通知插件配置教程
可以对用户的各种操作进行通知,官网:http://sc.ftqq.com,可对新订单,提现,工单,注册,用户升级,评价等相关操作做出通知 功能列表: 1.有新订单时提醒 2.用户发起工单时提醒 3.用 ...
- bootstrap-toastr 消息通知插件
点击按钮后,显示一个提示信息,然后自动消失 首先需要引入toastr.css和toastr.min.js 下载地址: 版本:latest 复制 标签 复制链接 https://cdn.bootcss. ...
- uniapp 自定义图片水印插件(任意位置) Ba-Watermark
自定义图片水印 Ba-Watermark 简介(下载地址) Ba-Watermark 是一款uniapp给图片自定义水印的插件. 支持添加多个.多种样式水印 支持在任意位置添加 支持按实际像素或图片高 ...
- uniapp 树形层级选择器插件 ba-tree-picker
简介(下载地址) ba-tree-picker 是一款 树形层级选择器插件,使用的picker弹窗形式的,样式和比例参照uniapp的picker和uni-data-picker组件 支持单选.多选. ...
- java 观察者模式_重学 Java 设计模式:实战观察者模式「模拟类似小客车指标摇号过程,监听消息通知用户中签场景」...
一.前言 知道的越多不知道的就越多 编程开发这条路上的知识是无穷无尽的,就像以前你敢说精通Java,到后来学到越来越多只想写了解Java,过了几年现在可能想说懂一点点Java.当视野和格局的扩大,会让 ...
- Laravel——消息通知
有的时候,在做一些业务的时候,可能会遇到这么个需求.那就是,别人评论了你的某个东西,或者是关注你,再或者是收藏了你的文章,那么作者,应该是需要被通知一下,以展现一下作者该有的成果,也可以满足一下作者小 ...
- Android学习—Notification消息通知
最近在项目中需要使用消息通知,自己把它封装成了一个方法,需要的时候方便调用, 下面对Notification类中的一些常量,字段,方法简单介绍一下: 常量: DEFAULT_ALL 使用所有默认 ...
最新文章
- 安卓最好用的浏览器_iOS最好用的浏览器,没有之一!
- ElasticSearch-7.10版本最新万字长文教程【距离搞懂ELK核心你只差这一片文章】
- Qt Creator的下载和安装
- react+redux+antd图书管理系统学习
- 一种避免 iOS 内存碎片的方法
- 无线设置 用户_【HIT每日学14】医院无线网络安全管理办法
- 微课|玩转Python轻松过二级(2.4节):常用内置函数用法精要2
- DenseNet翻译:Densely Connected Convolutional Networks
- 响应式编程笔记三:一个简单的HTTP服务器
- 如何进行在线教育平台开发(源码篇)
- 木马文件slader以及各种捆绑木马、流氓软件
- QueryDSL基本操作demo
- 如何对matlab .m代码文件进行加密
- echarts柱状图图例设置
- proteus仿真微型计算机,微机原理与接口技术——基于8086和Proteus仿真(第3版)...
- Matlab科研绘图颜色补充(特别篇)—51种中国传统颜色
- cso(布谷鸟)算法优化神经网络参数
- 上云十年:阿里云的奇幻漂流
- 一种巧妙的解决方案,一键恢复Win11中消失不见的“Microsoft Store”微软应用商店
- WKWebView 和UIWebView userAgent 全局设置和局部设置 9.0 12.0 兼容性问题