当应用程序不在前台或后台运行时,我们可以接收远程推送通知吗?基本上应用程序被杀死了?
问问题
882 次
3 回答
0
如果在应用程序未运行时收到应用程序的通知,则设备会提醒用户该应用程序有数据等待它。
于 2012-04-24T13:00:52.690 回答
0
是的,即使应用程序未运行,您仍会收到推送通知。
于 2012-04-24T12:59:02.830 回答
0
否,如果收到消息,它将不会启动您的应用程序,它由 iOS 处理。
如果用户选择查看通知,您的应用程序将启动。因此,如果用户没有对通知做出反应,您的应用程序将不会启动。如果 iOS 在用户为您的应用选择推送通知时启动您的应用,您将必须检查 lauchOptions 字典以查看是否有任何推送通知:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Override point for customization after application launch.
_rootViewController = [[RootViewController alloc] init];
self.window.rootViewController = self.rootViewController;
NSDictionary *remoteNotif = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
if (remoteNotif) {
//Handle notification
}
}
如果您的应用程序已经在运行并且在前台,那么应用程序委托将直接收到通知。- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
在您的应用程序委托上调用该方法。
于 2012-04-24T14:08:49.420 回答