如何监听 App 被关闭时 - iOS
Posted alexanderli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何监听 App 被关闭时 - iOS相关的知识,希望对你有一定的参考价值。
在 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的主要内容,如果未能解决你的问题,请参考以下文章
iOS 16 修改第三方库实现监听 SwiftUI 中 sheet 弹出视图的下滑关闭动作
iOS 16 修改第三方库实现监听 SwiftUI 中 sheet 弹出视图的下滑关闭动作