uni-app 小米每次收"您有0条未读消息"的推送 Bug

uni-app 小米每次收"您有0条未读消息"的推送 Bug

项目信息 详细信息
产品分类 uniapp/App
PC开发环境 Windows
PC操作系统版本 Win11
HBuilderX类型 正式
HBuilderX版本 4.07
手机系统 Android
手机系统版本 Android 14
手机厂商 小米
手机机型 未知
页面类型 vue
vue版本 vue2
打包方式 云端
项目创建方式 HBuilderX
App下载地址或H5网址 https://appgallery.huawei.com/app/C105678651

示例代码:

//清除一下角标
if (plus.os.name.toLowerCase() == 'ios') {
//导入ios UIApplication
var UIApplication = plus.ios.import("UIApplication");
var app = UIApplication.sharedApplication();
//获取应用图标的数量
// var oldNum = app.applicationIconBadgeNumber();
// var newNum = oldNum - 1;
//设置应用图标的数量
plus.runtime.setBadgeNumber(0);
//导入个推原生类
var GeTuiSdk = plus.ios.importClass('GeTuiSdk');
GeTuiSdk.setBadge(0);
} else {
plus.runtime.setBadgeNumber(-1);
}

操作步骤:

  • 小米用户每次打开这页,能收到这样”您有0条未读消息“。其余手机用户正常

预期结果:

  • 0条未读消息时,应该没有弹窗推送提示

实际结果:

  • 小米用户每次打开这页,能收到这样”您有0条未读消息“。其余手机用户正常

bug描述:

Image


更多关于uni-app 小米每次收"您有0条未读消息"的推送 Bug的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

请问解决了吗 我也碰到了这个问题

更多关于uni-app 小米每次收"您有0条未读消息"的推送 Bug的实战教程也可以访问 https://www.itying.com/category-93-b0.html


有没有考虑过自己的问题,uniapp官方很忙的好不好,工资涨没涨,有没有好好工作【dog】

在 uni-app 开发中,如果你遇到小米设备上收到“您有0条未读消息”的推送 Bug,可能是由于推送逻辑或设备兼容性问题导致的。以下是一些可能的原因和解决方案:


1. 检查推送逻辑

  • 问题原因:可能是推送逻辑中未正确处理未读消息数量为0的情况,导致发送了“您有0条未读消息”的推送。
  • 解决方案
    • 在发送推送之前,增加条件判断,避免在未读消息数量为0时发送推送。
    • 示例代码:
      if (unreadCount > 0) {
          // 发送推送
          uni.sendPushMessage({
              title: '新消息提醒',
              content: `您有${unreadCount}条未读消息`,
          });
      }
      

2. 小米设备推送兼容性问题

  • 问题原因:小米设备对推送消息的处理可能存在特殊性,尤其是对内容为空或数量为0的推送消息。
  • 解决方案
    • 确保推送内容符合小米推送规范,避免发送无意义的内容。
    • 可以尝试在推送内容中加入默认文案,例如:
      const pushContent = unreadCount > 0 ? `您有${unreadCount}条未读消息` : '您有新的消息,请查收';
      uni.sendPushMessage({
          title: '新消息提醒',
          content: pushContent,
      });
回到顶部