当应用程序未在前台或后台运行时,我们是否可以接收远程推送通知。基本上应用程序被杀?
答案 0 :(得分:0)
是的,即使应用未运行,您仍会收到推送通知。
答案 1 :(得分:0)
如果在该应用程序未运行时收到应用程序的通知,则设备会警告用户该应用程序有等待它的数据。
答案 2 :(得分:0)
否,如果收到消息,它将无法启动您的应用,它将由iOS处理。
如果用户选择查看通知,您的应用就会启动。因此,如果用户没有对通知作出反应,则您的应用将无法启动。 如果iOS在用户为您的应用选择推送通知时启动您的应用,则必须检查lauchOptions dictonary以查看是否有任何推送通知:
- (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
。