在Apple Doc Understanding When Your App Gets Launched into the Background
中支持后台执行的应用程序可能会被系统重新启动 处理传入的事件......
我正在做region monitoring
当我得到{i} {}时,我点击了UILocalNotification
我的应用UILocalNotification
被调用了。可能是因为我的应用程序是在后台启动的。
我做的第二件事是我没有点按didReceiveLocalNotification
并离开几分钟,这意味着我的应用程序将由iOS终止。我拖动通知中心,然后点按UILocalNotification
仍然我的应用输入UILocalNotification
。
我期待应用程序现在在延迟didReceiveLocalNotification
点按的情况下启动的行为必须输入此方法
UILocalNotification
实际发生的事情可以让任何人详细解释一下吗?
即使在我点按- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UILocalNotification *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];
if (notification)
{
NSLog(@"notification caused app to launch, alert body = %@", notification.alertBody);
// do what ever action you want to do
// you could just copy the code from "didReceiveLocalNotification" and paste it here
}
return YES;
}
app后出现延迟,也请不要输入
UILocalNotification
答案 0 :(得分:0)
您的应用程序在几分钟不活动后不会终止。
它变为空闲状态,只有在需要内存时才会终止。
请记住,它是在后台处理区域更改时启动的,并且它首先发送通知,因此它在此阶段驻留在设备内存中。
尝试使用多任务界面显式退出它或启动多个内存消耗应用程序(游戏通常可以做到这一点)强制它退出。在后台等几分钟不会让它终止。