uni-app 接入unipush2.0 报Bug

uni-app 接入unipush2.0 报Bug

测试过的手机

手机型号 系统
荣耀9x 鸿蒙系统

操作步骤:

  1. 打开app使其后台运行,使用接口给APP推送消息,接口返回:successed online
    点击手机通知栏上的消息。
  2. 后台杀死APP,使用接口给APP推送消息,接口返回:successed_offline
    点击手机通知栏的消息。

预期结果:

  1. 和2都能正常打开app

实际结果:

  1. 不能拉起app ;2 可正常拉起app

bug描述:

使用uniPush2.0离线时通过通知栏可以正常打开app;在线时通过通知栏,拉不起app


更多关于uni-app 接入unipush2.0 报Bug的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

在线uni.onPushMessage能监听到消息推送和点击么

更多关于uni-app 接入unipush2.0 报Bug的实战教程也可以访问 https://www.itying.com/category-93-b0.html


肯定不能,监听的前提你得进入app

回复 猎宠网: …谁告诉你的?推送是分透传消息和不是透传消息的

回复 套马杆的套子: 刚才我试了一下,点击能够监听到,也能打印参数,就是拉不起APP

在使用 uni-app 接入 UniPush 2.0 时,可能会遇到一些常见的问题或 Bug。以下是一些常见的问题及解决方法,帮助你排查和解决问题。

1. UniPush 2.0 未初始化

  • 问题描述: 无法收到推送消息,或者控制台报错 UniPush is not initialized
  • 解决方法:
    • 确保在 App.vuemain.js 中正确初始化 UniPush 2.0。
    • 检查 manifest.json 文件中是否配置了 UniPush 2.0 的相关信息。
    • 示例代码:
      // App.vue
      export default {
          onLaunch() {
              uni.getPushClientId({
                  success: (res) => {
                      console.log('获取到推送 ClientId:', res.cid);
                  },
                  fail: (err) => {
                      console.error('获取推送 ClientId 失败:', err);
                  }
              });
          }
      };
      

2. 推送权限问题

  • 问题描述: 在 Android 设备上无法收到推送消息,可能是由于权限问题。
  • 解决方法:
    • 确保在 manifest.json 中配置了正确的权限,特别是 android.permission.RECEIVE_BOOT_COMPLETEDandroid.permission.WAKE_LOCK
    • 示例配置:
      {
          "permissions": {
              "android": [
                  "android.permission.RECEIVE_BOOT_COMPLETED",
                  "android.permission.WAKE_LOCK"
              ]
          }
      }
      

3. 推送消息未显示

  • 问题描述: 推送消息已经发送,但在设备上没有显示。
  • 解决方法:
    • 检查设备是否开启了通知权限。
    • 确保在 manifest.json 中配置了正确的通知渠道(Android 8.0 及以上需要)。
    • 示例配置:
      {
          "push": {
              "android": {
                  "notificationChannelId": "your_channel_id",
                  "notificationChannelName": "Your Channel Name"
              }
          }
      }
      

4. 推送消息点击无响应

  • 问题描述: 点击推送消息后,应用未打开或未跳转到指定页面。
  • 解决方法:
    • 确保在 App.vue 中监听了 onNotificationOpened 事件,并正确处理点击事件。
    • 示例代码:
      // App.vue
      export default {
          onLaunch() {
              uni.onNotificationOpened((res) => {
                  console.log('通知被点击:', res);
                  // 根据 res.payload 跳转到指定页面
                  uni.navigateTo({
                      url: '/pages/yourPage'
                  });
              });
          }
      };
回到顶部