uni-app 收不到推送消息

uni-app 收不到推送消息

测试过的手机

手机型号 系统
IPhone 8 plus IOS 14
OPPO realme x7pro 安卓11

示例代码

// 服务端代码(JAVA)  
public static ApiContext build() {  
    ApiContext context = new ApiContext();  
    GtApiConfiguration apiConfiguration = new GtApiConfiguration();  
    context.configuration = apiConfiguration;  

    apiConfiguration.setAppId("----");  
    apiConfiguration.setAppKey("----");  
    apiConfiguration.setMasterSecret(" ------ ");  
    // 接口调用前缀,请查看文档: 接口调用规范 -> 接口前缀, 可不填写appId  
    apiConfiguration.setDomain("https://restapi.getui.com/v2/");  

    context.cid = " ----  ";  

    return context;  
}  

// APP 代码  
plus.push.addEventListener(  
    'receive',  
    function(msg) {  
        try {  
            // 创建本地通知  
            if (msg.payload != 'localMSG' && msg.aps) {  
                let title = msg.aps.alert.title;  
                let msgbody = msg.aps.alert.body;  
                plus.push.createMessage(title + ':' + msgbody, 'localMSG');  
            }  
        } catch (e) {  
            plus.nativeUI.alert(e.message + '\n' + JSON.stringify(msg), null, 'Receive错误信息');  
        }  
    },  
    false  
);

操作步骤

  1. 调用服务端个推V2 Java SDK (成功)
  2. APP 收不到消息内容

预期结果

期望APP可以收到消息

实际结果

实际收不到。
上个月初还可以的。这个月就不行了,推送代码没有调整过

bug描述

/*  

  服务端采用个推2.0版本Java sdk测试,ApiResult{code=0, msg='success', data}  

   IOS APP 收到消息内容为:{"aps": null, "content":"", "payload":"", "title":"有值","type":"receive"}  
   Android 根据收到消息  
*/

更多关于uni-app 收不到推送消息的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app 收不到推送消息的实战教程也可以访问 https://www.itying.com/category-93-b0.html


根据你提供的信息,问题可能出现在以下几个方面:

1. 证书问题(iOS)

  • 个推推送证书可能已过期,需要重新生成并上传到个推后台
  • 检查证书环境(开发/生产)是否与APP打包环境匹配

2. 权限配置

Android:

  • 确保在manifest.json中正确配置推送权限
  • 检查应用自启动权限是否被系统限制(特别是OPPO、小米等定制系统)

iOS:

  • 确认在uni-app项目的manifest.json中已配置推送能力
  • 检查用户是否关闭了通知权限

3. 个推配置检查

  • 验证AppId、AppKey、MasterSecret是否正确
  • 检查个推后台该应用的状态是否正常
  • 确认CID绑定状态(可通过服务端查询CID是否在线)

4. 代码调整建议

修改接收事件处理逻辑,增加调试信息:

plus.push.addEventListener('receive', function(msg) {
    console.log('收到推送消息:', JSON.stringify(msg));
    
    // 测试直接创建本地通知
    plus.push.createMessage('测试通知', 'test', {
        title: '测试标题',
        cover: false
    });
}, false);
回到顶部