ios - 通过 FCM 消息控制台在后台向我的 iOS 应用程序发送静默通知
<p><p>我想向我的 iOS 应用程序发送静默通知,为此我已在其中实现了 FCM。当应用程序在后台时,我需要在应用程序从 FCM 收到通知时执行一些操作。</p>
<p>为此,执行过程将进入调用的方法</p>
<pre><code>-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
</code></pre>
<p><br/>
但问题是,在用户点击通知之前,它不会进入此方法。</p>
<p>根据 (<a href="https://firebase.google.com/docs/cloud-messaging/http-server-ref#data" rel="noreferrer noopener nofollow">FCM documents</a>),如果我们想在后台唤醒我们的应用程序,那么我们必须传递键值为 true 的 content_available 参数。但是当我在 <a href="https://firebase.google.com/docs/cloud-messaging/ios/receive" rel="noreferrer noopener nofollow">custom data</a> 中通过您的 FCM Compose 消息控制台发送此信息时,我们的应用程序不会唤醒,也不会在后台激活,直到用户点击通知。我想我收到的所有通知都是正常通知,而不是无声通知。所以 FCM 的实现和发送通知看起来工作得很好。</p>
<p>我遵循了所有给出的 FCM 文档并引用了几乎所有可能的连接 stackoverflow 解决方案。甚至我已经关注了发送远程通知的苹果文档。最后,我通过 FCM 消息控制台发送“content_available”:true。但它并没有变成无声通知,我收到的通知是用户必须点击的正常通知,才能进入方法 <code>didReceiveRemoteNotification</code>。</p>
<p>我已经引用了很多这样的链接
<a href="https://stackoverflow.com/questions/42275060/what-is-difference-between-remote-notification-and-silent-notification-in-ios" rel="noreferrer noopener nofollow">here</a> ,
<a href="https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/HandlingRemoteNotifications.html" rel="noreferrer noopener nofollow">here</a> , &
<a href="https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/CreatingtheNotificationPayload.html" rel="noreferrer noopener nofollow">here</a> </p>
<p>是否有可能通过 FCM 在后台接收通知(如静默通知)?
或任何其他实现方式?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>我已经找到了解决方案。
跟着这个<a href="https://stackoverflow.com/questions/45309674/fcm-with-postman-the-request-was-missing-an-authentication-key-fcm-token/45310143#45310143" rel="noreferrer noopener nofollow">link</a>及其答案。 </p>
<p>然后像这样在postman中输入json body</p>
<pre><code>{
"to":"eEBrg.... .... .... .... (FCM Token)",
"priority": "normal",
"content_available": true,
"notification":{
(do not send body here if you want to send the silent notification)
"requesttype":"ring" // optional
}
}
</code></pre>
<p>...您的应用程序将在后台唤醒并进入方法 didReceiveRemoteNotification 。 </p></p>
<p style="font-size: 20px;">关于ios - 通过 FCM 消息控制台在后台向我的 iOS 应用程序发送静默通知,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/47770256/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/47770256/
</a>
</p>
页:
[1]