【uniapp】uniapp的安卓apk图标角标设置消息数目

[复制链接]
发表于 2026-2-19 11:36:35 | 显示全部楼层 |阅读模式
1、告急方法:

设置角标:
plus.runtime.setBadgeNumber(999)
扫除角标:
//plus.runtime.setBadgeNumber(0)//没有用果
plus.runtime.setBadgeNumber(-1) //有用果 (写本文章的本意是纪录这个标题)
2、利用在详细的生命周期

1、打开app获取角标数目
2、关闭app获取角标数目
3、非登入和退出登入获取角标数目
在App.vue中:
  1. <script>
  2.         export default {
  3.                 onLaunch: function() {
  4.                         console.warn('当前组件仅支持 uni_modules 目录结构 ,请升级 HBuilderX 到 3.1.0 版本以上!')
  5.                         console.log('App Launch')
  6.                         // #ifdef APP-PLUS
  7.                         // #endif
  8.                 },
  9.                 onShow: function() {
  10.                         console.log('App Show')
  11.                         // #ifdef APP-PLUS
  12.                                 this.getList();
  13.                         // #endif
  14.                 },
  15.                 onHide: function() {
  16.                         console.log('App Hide')
  17.                         // #ifdef APP-PLUS
  18.                                 this.getList();
  19.                         // #endif
  20.                 },
  21.                 methods:{
  22.                         getList() {
  23.                                 const token = uni.getStorageSync('token') || false
  24.                                 //是否在登入状态(看自己代码检测登入状态的判断方式)
  25.                                 if (uni.getStorageSync('token') && token) {
  26.                                         let Info = uni.getStorageSync('userInfo')
  27.                                         let obj = {
  28.                                                 noticeUser: Info.userId,
  29.                                         }
  30.                                         //获取当前账号接收的未读消息数量(角标要展示的数量)
  31.                                         this.request({
  32.                                                 url: '/message/listCount',
  33.                                                 method: 'get',
  34.                                                 params: obj
  35.                                         }).then(res => {
  36.                                                 this.list = res.data
  37.                                                 let num = 0
  38.                                                 res.data.forEach(item => {
  39.                                                         num += item.num
  40.                                                 })
  41.                                                 if(num>0){
  42.                                                         this.setBadge(num)
  43.                                                 }else{
  44.                                                         this.clearBadge()
  45.                                                 }
  46.                                         }).catch(error => {
  47.                                                 this.clearBadge()
  48.                                                 console.log('失败', error);
  49.                                         })
  50.                                 }else{
  51.                                    //未登入状态清空
  52.                                         this.clearBadge()
  53.                                 }
  54.                         },
  55.                         //设置角标
  56.                         setBadge(num){
  57.                                 plus.runtime.setBadgeNumber(num)
  58.                         },
  59.                         //清除角标
  60.                         clearBadge(){
  61.                                 plus.runtime.setBadgeNumber(-1)
  62.                         }
  63.                        
  64.                 }
  65.         }
  66. </script>
  67. <style>
  68.         .container {
  69.                 width: 100vw;
  70.                 height: 86.5vh;
  71.         }
  72. </style>
复制代码
3、uniapp云打包时开启Push,做好设置


4、留意事项

1、记得加上一下内容,限定在app中见效,否则在网页测试会plus报错
  1. // #ifdef APP-PLUS
  2. // #endif
复制代码
2、打包发布后根据提示去uniapp官网按流程处理处罚干系设置就行
3、非外网利用1.0版本就行
4、扫除角标plus.runtime.setBadgeNumber(0)不见效,因此我接纳了传-1
5、差异手机厂商的适配标题发起看到官网https://uniapp.dcloud.net.cn/unipush-v1.html的留意事项
6、设置app在手机的关照权限
整理一下一些手机处理处罚不了的办理方法(连续更新):

发起看到官网https://uniapp.dcloud.net.cn/unipush-v1.html的留意事项
1、华为手机信息角标不出现:
https://blog.csdn.net/qq_36157085/article/details/119383264
。。。。。。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!qidao123.com:ToB企服之家,中国第一个企服评测及软件市场,开放入驻,技术点评得现金

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表