处理收件人应用尚未运行时到达的推送通知的常用方法是什么?我在应用程序启动时的印象,我可以检测到它是因为推送通知到达而启动,然后在后台开始下载而无需启动GUI。但是,如果用户在下载时启动应用程序,人们通常会做什么?只是显示警告或什么?感谢。
答案 0 :(得分:4)
我的印象是我可以启动应用
这是一个糟糕的选择。 你无能为力。用户可能会在收到推送通知后决定打开您的应用。
检测到它已启动,因为推送通知已到达
是的。应用程序:你的app委托中的didFinishLaunchingWithOptions将传入包含推送通知数据的字典(在这种情况下,示例代码是本地通知):
if ([UILocalNotification class]) // check if we support local notifications
{
UILocalNotification *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];
if (notification) {
NSString *resourcePath = [notification.userInfo objectForKey:@"resourcePath"]; // get arbitrary data that you stored in the notification (key-value pairs)
}
application.applicationIconBadgeNumber = 0; // reset the app icon badge number
}
在后台没有启动GUI
你做不到。应用启动的唯一可能工作流程是通知 - >用户点击阅读更多按钮 - >应用程序在前台打开。
如果用户在发生下载时启动应用,人们通常会做些什么?只是显示警告或什么?
这个问题并不适用,因为该应用程序无法在后台启动,但一般情况下,如果您的应用程序正在执行某项操作,用户通常不应关心正在发生的事情。因此,除非数据是应用程序运行所必需的,否则不应出现任何类型的警告。