在我的应用程序中,我正在通过一种方法下载大量图像。
我正在使用一个
downloadTask = [[UIApplication sharedApplication]
beginBackgroundTaskWithExpirationHandler:^{
[[UIApplication sharedApplication] endBackgroundTask:downloadTask];
downloadTask = UIBackgroundTaskInvalid;
}];
这工作正常,如果我按下主页或睡眠按钮,图像会继续下载。
我在 UIAlertView 内的 UIProgressView 中显示进度,当百分比为 100% 时,alertView 被关闭,我将 viewController 更改为显示下载图像的其他位置。但我只希望在下载完成时应用程序真正处于活动状态时发生这种情况。
我一直在查看应用程序状态,并且在关闭屏幕的情况下下载。
[UIApplication sharedApplication].applicationState
在所有下载期间状态为 UIApplicationStateActive
我怎样才能知道下载是在屏幕关闭还是打开的情况下进行的?
接受答案后编辑:
我刚刚发现,如果我点击主页按钮,应用程序会进入 UIApplicationStateBackground,如果我点击唤醒/睡眠,它会进入 UIApplicationStateInactive
按照正确答案的方法,我的应用程序在这两种情况下都会继续下载。