uni-app 接收推送消息ios闪退

uni-app 接收推送消息ios闪退

开发环境 版本号 项目创建方式
Windows win10 HBuilderX

示例代码:

//在线推送
plus.push.addEventListener("receive", function(msg) {
if (msg.aps) { // Apple APNS message
//APNS下发的消息,应用在前台
plus.push.createMessage(msg.content, msg.payload, {
title: msg.title
});
} else if (msg.type != "receive") { // 特殊payload标识本地创建的消息      
} else {  
    //接收到在线透传消息    
    plus.push.createMessage(msg.content, msg.payload, {  
        title: msg.title  
    });  
}  
}, false);

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

2 回复

解决了吗大佬

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


从代码和问题描述来看,iOS接收推送时闪退通常与以下几个原因有关:

  1. payload格式问题
    msg.aps存在时,说明是APNS消息,但直接使用msg.contentmsg.title可能为undefined。建议改为:

    const title = msg.title || msg.aps?.alert?.title || "通知";
    const content = msg.content || msg.aps?.alert?.body || "";
    

    避免空数据导致createMessage异常。

  2. 本地消息重复触发
    代码中msg.type != "receive"的条件可能拦截失效,导致同一消息多次调用createMessage。建议明确过滤本地消息:

    if (msg.type === "receive") {
      // 仅处理在线推送
    }
回到顶部