码迷,mamicode.com
首页 > 移动开发 > 详细

如何监听 App 被关闭时 - iOS

时间:2018-05-20 13:13:10      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:method   保存数据   void   代码   sources   current   enter   数据   mina   

在 Appdelegate 里

applicationWillTerminate

是处理应用程序将终止的时候

按道理,我们在这个地方去写我们 App 被关闭时的操作就行。

但是,我发现 App 关闭的时候,并不会走到这里来。

然后我看了下系统的注释:当应用程序即将终止时调用。如果适当的保存数据。可看 appropriate. See also applicationDidEnterBackground:. 这个方法

好像和我遇到的问题没啥关系! 我只想在 App 关闭的时候调用

// 应用程序将终止
- (void)applicationWillTerminate:(UIApplication *)application {
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
    NSLog(@"applicationWillTerminate");
}

好了,答案来了。

我们到 applicationDidEnterBackground 执行个方法,代码如下:

// 我们到 applicationDidEnterBackground 执行下 beginBackgroundTaskWithExpirationHandler
- (void)applicationDidEnterBackground:(UIApplication *)application {
    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
    [[UIApplication sharedApplication]beginBackgroundTaskWithExpirationHandler:^(){
    }];
    NSLog(@"applicationDidEnterBackground");
}

// 这时候你就会发现 applicationWillTerminate 这货被调用了,有没有人过来解释下。。
- (void)applicationWillTerminate:(UIApplication *)application {
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
    NSLog(@"applicationWillTerminate");
}

如何监听 App 被关闭时 - iOS

标签:method   保存数据   void   代码   sources   current   enter   数据   mina   

原文地址:https://www.cnblogs.com/AlexanderLi/p/9062929.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!