gpt4 book ai didi

ios - 如何在 IOS 上使用 FCM 检测卸载?

转载 作者:行者123 更新时间:2023-12-04 11:43:59 25 4
gpt4 key购买 nike

TL; 博士
我正在使用 FCM 检测卸载。如果我收到 NotRegistered token在发送通知时,我假设该应用程序已被卸载。
Android 一切正常,而在 IOS 上我总是收到 success响应,即使应用程序已卸载数天。
更多信息
我有 read可以使用 APNs feedback Service 检测卸载,其中 Apple 报告任何不活动的 token 。
我还阅读了 Firebase 官方 documentation那:

content_available - On iOS, use this field to represent content-available in the APNs payload. When a notification or message is sent and this is set to true, an inactive client app is awoken, and the message is sent through APNs as a silent notification and not through the FCM connection server.


为了通过 APN 发送通知,我尝试使用 content_available: true 发送推送通知。 ,但我无法重现 NotRegistered token IOS 上的错误。它仍然返回 success信息。
我正在使用 sendMulticast 发送通知.我的有效载荷:
const payload = {
notification: {
title: text,
},
android: {
priority: "high",
ttl: 60 * 60 * 1,
collapseKey: "yo",
notification: {
channel_id: 'YO',
tag: userDoc.id,
},
},
apns: {
payload: {
aps: {
sound: "reminder.caf",
"content-available": 1,
}
},
headers: {
"apns-collapse-id": "yo",
"apns-priority": "10"
}
},
priority: 10
}
我也无法重现 NotRegistered token通过 HTTP 请求响应:
curl -X POST \
https://fcm.googleapis.com/fcm/send \
-H 'authorization: key=server_key_here' \
-H 'content-type: application/json' \
-d '{
"to": "fcm_token_here",
"priority": "high",
"content_available": true,
"notification": {
"empty": "body"
},
"data": {
"key1": ""
}
}'
底线
1. 如何使用 FCM 检测 IOS 卸载?
2. 如果不可能,我如何检测 IOS 上的卸载?

最佳答案

嗯,看你的需求了。您的问题的答案是静推不是正常推。
后台通知是一种远程通知,不会显示警报、播放声音或标记您的应用程序图标。它会在后台唤醒您的应用程序,并让它有时间从您的服务器开始下载并更新其内容。 Apple Document

重要

The system treats background notifications as low priority: you can use them to refresh your app’s content, but the system doesn’t guarantee their delivery. In addition, the system may throttle the delivery of background notifications if the total number becomes excessive. The number of background notifications allowed by the system depends on current conditions, but don’t try to send more than two or three per hour.

Silent push notifications will not work when the device is in “LowData Mode“.


静默推送通知负载示例。
  {
"aps" : {
"content-available" : 1
},
"acme1" : "bar",
"acme2" : 42
}
您必须使用 “内容可用”:1 的有效载荷中静推 .
另一方面,如果您的客户端在 iOS 12.3 或更高版本上运行 Deletions metric

关于ios - 如何在 IOS 上使用 FCM 检测卸载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67659116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com