AppDelegate代理方法程序终止的调用方法
- (void)applicationWillTerminate:(UIApplication *)application
{
NSLog(@"杀死进程");
}
测试发现,杀死程序并不会调用该方法,需要添加监听事件才会调用
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillTerminate:) name:UIApplicationDidEnterBackgroundNotification object:nil];
添加完成监听事件,会发现applicationWillTerminate :
在进程杀死的情况下会调用2次(一次进入后台,一次程序被干掉)没办法区分是哪一种方式调用的
解决方案:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didEnterBackground:) name:UIApplicationDidEnterBackgroundNotification object:nil];
- (void)didEnterBackground:(UIApplication *)application {
NSLog(@"进入后台");
}
- (void)applicationWillTerminate:(UIApplication *)application {
NSLog(@"程序被杀死");
}
网友评论