我的应用程序中有一个解密和加密方法。当应用程序进入后台时,文件被加密。如果应用程序进入前台,文件将被解密。这就是主要故事。这两个部分都需要一些时间和大量内存。在后台,我正在做类似的事情。
encryptionTaskId = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^(void) {
// Wwe took too long. Stop task.
}];
在 applicationWillEnterForeground 中,我执行以下操作:
if (encryptionTaskId != UIBackgroundTaskInvalid) {
[[UIApplication sharedApplication] endBackgroundTask:encryptionTaskId];
}
我认为这很好。但我的问题是当有人在解密我的文件home
期间单击按钮时。applicationWillEnterForeground
再次applicationDidEnterBackground
开始,但我的解密还没有完成。处理它的最佳方法是什么。是否也可以等到前台完成?