[ios]IOS的AppDelegate方法中的事件触发调用 以及 关闭 ios应用程序
IOS的AppDelegate方法中的事件触发调用
参考:http://blog.sina.com.cn/s/blog_a573f7990101bphp.html
//当应用程序将要进入非活动状态执行,在此期间,应用程序不接受消息或事件,比如来电 - (void)applicationWillResignActive:(UIApplication *)application { NSLog(@"应用程序将要进入非活动状态,即将进入后台"); } //应用程序已经进入后台运行 - (void)applicationDidEnterBackground:(UIApplication *)application { NSLog(@"如果应用程序支持后台运行,则应用程序已经进入后台运行"); 如果需要退出后台,则在这里加上:exit(0); } //应用程序将要进入活动状态执行 - (void)applicationWillEnterForeground:(UIApplication *)application { NSLog(@"应用程序将要进入活动状态,即将进入前台运行"); } //应用程序已经进入活动状态 - (void)applicationDidBecomeActive:(UIApplication *)application { NSLog(@"应用程序已进入前台,处于活动状态"); } //应用程序将要退出,通常用于保存书架喝一些推出前的清理工作, - (void)applicationWillTerminate:(UIApplication *)application { NSLog(@"应用程序将要退出,通常用于保存书架喝一些推出前的清理工作"); } //当设备为应用程序分配了太多的内存,操作系统会终止应用程序的运行,在终止前会执行这个方法 //通常可以在这里进行内存清理工作,防止程序被终止 -(void)applicationDidReceiveMemoryWarning:(UIApplication *)application { NSLog(@"系统内存不足,需要进行清理工作"); } //当系统时间发生改变时执行 -(void)applicationSignificantTimeChange:(UIApplication *)application { NSLog(@"当系统时间发生改变时执行"); } //当程序载入后执行 -(void)applicationDidFinishLaunching:(UIApplication *)application { NSLog(@"当程序载入后执行"); }
按home键是处理applicationDidEnterBackground了,程序处理applicationDidEnterBackground之后,系统会让程序有5秒钟的时间来保留数据,对于一般的数据存储,5秒足够了。
applicationWillTerminate 按home键不能被调用
在AppDelegate获取UIViewController方法:
UIViewController *vc = (UIViewController *)self.window.rootViewController
关闭ios
参考:http://blog.163.com/wzi_xiang/blog/static/65982961201302210854891/
一句代码
exit(0);