Ios iPhone X上未收到Firebase通知FCM
我有一个iOS应用程序Ios iPhone X上未收到Firebase通知FCM,ios,firebase,push-notification,apple-push-notifications,firebase-cloud-messaging,Ios,Firebase,Push Notification,Apple Push Notifications,Firebase Cloud Messaging,我有一个iOS应用程序(Xcode 9/Swift 4),它使用Firebase云消息接收静默推送通知 该应用程序已经发布,但iPhone X用户没有收到通知 我已经对所有内容进行了三次检查,所有内容都是最新的,包括GooglePodsFirebaseMessaging(3.0.2) 生成静默推送通知的我的服务器应用程序(c#)也使用了最新版本的GoogleAPI(1.34) 因此,使用生成通知的应用程序来测试iPhone是否收到通知,我得到了以下结果: 连接到Xcode的iPhone 6S收
(Xcode 9/Swift 4)
,它使用Firebase云消息
接收静默推送通知
该应用程序已经发布,但iPhone X用户没有收到通知
我已经对所有内容进行了三次检查,所有内容都是最新的,包括GooglePodsFirebaseMessaging(3.0.2)
生成静默推送通知的我的服务器应用程序(c#)也使用了最新版本的GoogleAPI(1.34)
因此,使用生成通知的应用程序来测试iPhone是否收到通知,我得到了以下结果:
- 连接到Xcode的iPhone 6S收到通知
- 运行testflight版本的iPhone 6S收到通知
- 运行app store版本的iPhone 6S收到通知
- 连接到Xcode的iPhone X收到通知
- 运行testflight版本的iPhone X未收到
- 运行应用商店版本的iPhone X未收到
“通知:{”title:“xxx”,“body:“xxx”}”
,这是毫无意义的,因为iPhone 6S可以在没有添加负载的情况下接收静默推送通知。。。现在的问题是,向有效负载添加“通知”将使iOS在收到通知后立即在托盘上显示通知,这与我想要传递的“无声”通知的目的背道而驰
以下是之前的有效负载,它在iPhone X上不起作用,但在iPhone 6S上起作用(FCM负责添加可用内容
标记):
这是一款与iPhone X配合使用但会弹出系统通知的手机,我不想看到:
{"message": {"token" : "eANw_OLOKXc:APA.....XsMg", "notification":{"title":"xxx","body":"xxx"},"data" : {"content" : "2546|N|495....arg|BATTERY|||||"}}}
为什么iphone6s在没有通知的情况下工作?我如何向iPhoneX发送无声通知
编辑3:我想唯一的选择是启动一个新项目,复制问题,因为我被卡住了。。。我不明白为什么通过运行由Xcode绑定的项目可以使它在iPhoneX中工作,但在没有插入USB电缆的情况下运行时,它不会收到通知。
我忘了提到iPhone6S也在iOS 11.4上
编辑4:我在收到无声通知时就设法直接从iPhone X获取了一些日志:
Jun 26 01:08:46 MP apsd[9726] <Notice>: APSMessageStore - APSIncomingMessageRecordDeleteMessageForGUID <private>
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680] <Notice>: Received incoming message on topic com.mydomain.myapp2 at priority 1
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680] <Notice>: [com.mydomain.myapp2] Received remote notification request C752-66DA [ hasAlertContent: 0, hasSound: 0 hasBadge: 0 hasContentAvailable: 1 hasMutableContent: 0 ]
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680] <Notice>: [com.mydomain.myapp2] Deliver push notification request C752-66DA
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680] <Notice>: [com.mydomain.myapp2] Passing content-available push to Duet
Jun 26 01:08:46 MP SpringBoard(DuetActivityScheduler)[9680] <Notice>: SUBMITTING: <private>
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680] <Error>: Ignoring notification with no alert, sound or badge (com.mydomain.myapp2): C752-66DA
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680] <Notice>: [com.mydomain.myapp2] Not saving push notification C752-66DA to store [ error=Error Domain=UNErrorDomain Code=1401 "Notification has no user-facing content" UserInfo={NSLocalizedDescription=Notification has no user-facing content} ]
Jun 26 01:08:46 MP dasd(DuetActivitySchedulerDaemon)[9752] <Notice>: Submitted Activity: com.apple.pushLaunch.com.mydomain.myapp2:2AD94B <private>
Jun 26 01:08:46 MP dasd(DuetActivitySchedulerDaemon)[9752] <Notice>: Daemon Canceling Activities: {(
com.apple.pushLaunch.com.mydomain.myapp2:2AD94B
)}
Jun 26 01:08:46 MP dasd(DuetActivitySchedulerDaemon)[9752] <Notice>: CANCELED: com.apple.pushLaunch.com.mydomain.myapp2:2AD94B <private>!
Jun 26 01:08:46 MP apsd[9726]:APSMessageStore-apsinomingMessageRecordDeleteMessageForGuid
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680]:在主题com.mydomain.myapp2上收到优先级为1的传入消息
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680]:[com.mydomain.myapp2]收到远程通知请求C752-66DA[hasAlertContent:0,hasSound:0 hasBadge:0 hasContentAvailable:1 hasMutableContent:0]
Jun 26 01:08:46 MP SpringBoard(用户通知服务器)[9680]:[com.mydomain.myapp2]传递推送通知请求C752-66DA
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680]:[com.mydomain.myapp2]将可用内容推送到Duet
Jun 26 01:08:46 MP SpringBoard(DuetActivityScheduler)[9680]:提交:
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680]:忽略没有警报、声音或徽章的通知(com.mydomain.myapp2):C752-66DA
Jun 26 01:08:46 MP SpringBoard(UserNotificationsServer)[9680]:[com.mydomain.myapp2]未将推送通知C752-66DA保存到存储[error=error Domain=UNErrorDomain=UNErrorDomain Code=1401“通知没有面向用户的内容”UserInfo={NSLocalizedDescription=通知没有面向用户的内容}]
Jun 26 01:08:46 MP dasd(DuetactivitySchedulerDamon)[9752]:提交的活动:com.apple.pushLaunch.com.mydomain.myapp2:2AD94B
Jun 26 01:08:46 MP dasd(DuetracivitySchedulerDamon)[9752]:守护进程取消活动:{(
com.apple.pushLaunch.com.mydomain.myapp2:2AD94B
)}
6月26日01:08:46 MP dasd(DuetracivitySchedulerDamon)[9752]:取消:com.apple.pushLaunch.com.mydomain.myapp2:2AD94B!
因此,iOS似乎会收到通知以及数据(hasContentAvailable:1
),但不会将其发送到我的应用程序
还有,为什么会出现此错误::忽略没有警报、声音或徽章的通知
。。。无声通知没有警报/声音/标识 FirebaseMessaging(3.0.2)在11.4上的推送通知存在问题
尝试使用其他版本,如3.0.6FirebaseMessaging(3.0.2)在11.4上出现推送通知问题
尝试使用其他版本,如3.0.6,我也有类似的问题。我将优先级设置为高,并添加了以下有效负载
let message = {
notification: {
title: 'title',
body: `title`
}
};
let options = {
priority: "high",
timeToLive: 60 * 60 * 24
};
到目前为止,它运行良好。我也遇到过类似的问题。我将优先级设置为高,并添加了以下有效负载
let message = {
notification: {
title: 'title',
body: `title`
}
};
let options = {
priority: "high",
timeToLive: 60 * 60 * 24
};
<