2016-11-19 83 views
2

我想了解如何在获取通知后更新我的应用程序。如果用户没有点击通知,swift通知更新应用程序

我想要做的仅仅是,一旦应用程序获得通知我想简单的增加值,并将其存储喜欢:userDefaults.set(counter, forKey: "someKey")

我知道,如果用户在通知实际点击我可以做到这一点很容易和应用程序打开。

但是有没有办法做到这一点,即使用户不点击通知?

回答

0

您可以在背景模式下启用Remote Notification选项。

当启用它可以使用委托方法来更新值并将其存储在userdefaults

application:didReceiveRemoteNotification:fetchCompletionHandler: 

Apple Docs

0

启用后台取,并在后台模式远程通知其可以发现在Xcode中的功能。 如果您发送的通知的“content-available”键设置为1,则将调用您的应用程序的远程通知的应用程序委托方法。在该方法中,您可以将新数据存储到UserDefaults。

这是你需要在你的应用程序代理实现方法:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler 

另外请注意,如果应用程序是由用户杀死这是不行的。如果您的应用程序是VOIP应用程序,则可以使用PushKit在后台打开您的应用程序以进行数据更新,即使用户之前已经杀死了该应用程序。

相关问题