OStack程序员社区-中国程序员成长平台

标题: ios - 当用户在后台收到推送后手动打开应用程序时获取推送通知有效负载 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 18:56
标题: ios - 当用户在后台收到推送后手动打开应用程序时获取推送通知有效负载

我正在使用 iOS7,我正在尝试确定是否可以在以下情况下获取 JSON 有效负载。

当我在收到通知后从图标本身启动应用程序时,我没有在启动选项中得到推送

- (BOOL)applicationUIApplication *)application didFinishLaunchingWithOptionsNSDictionary *)launchOptions;

从图标手动启动应用时也不会调用以下方法

-(void)applicationUIApplication *)application didReceiveRemoteNotificationNSDictionary *)userInfo fetchCompletionHandlervoid (^)(UIBackgroundFetchResult))completionHandler {



Best Answer-推荐答案


我终于想通了如何获得这个!

从 iOS 7 开始,您可以获取它!

基本上,您需要为应用程序配置后台远程通知。

所以,在您的 info.plist 文件中: 对于所需背景 - 将其设置为应用从推送通知中下载内容。

AppDelegate.m文件中,需要实现这个方法:

- (void)applicationUIApplication *)application didReceiveRemoteNotificationNSDictionary *)userInfo fetchCompletionHandlervoid (^)(UIBackgroundFetchResult))completionHandler

请参阅此处了解如何实现:didReceiveRemoteNotification: fetchCompletionHandler: open from icon vs push notification

对于您的推送通知,您必须将 'content-available': 1, 作为推送通知的一部分。这就是在显示警报之前告诉应用程序有新内容的原因。

有关后台远程通知的更多信息,请参阅此页面:http://developer.xamarin.com/guides/cross-platform/application_fundamentals/backgrounding/part_3_ios_backgrounding_techniques/updating_an_application_in_the_background/

关于ios - 当用户在后台收到推送后手动打开应用程序时获取推送通知有效负载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21859012/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4