在我的应用程序中,我正在下载一个方法的大量图像。如何知道任务是否在后台执行
我使用的是
downloadTask = [[UIApplication sharedApplication]
beginBackgroundTaskWithExpirationHandler:^{
[[UIApplication sharedApplication] endBackgroundTask:downloadTask];
downloadTask = UIBackgroundTaskInvalid;
}];
这是工作的罚款,如果我按家庭或睡眠按钮,图像继续下载。
我在UIAlertView中显示UIProgressView的进度,当百分比为100%时,alertView被取消,我将viewController更改为其他显示donwloaded图像的地方。 但是我只希望在下载完成时应用程序真正处于活动状态才会发生这种情况。
我一直在寻找应用程序的状态,而它的下载与屏幕关闭。
[UIApplication sharedApplication].applicationState
状态是UIApplicationStateActive所有donwload
我如何才能知道期间,如果下载与屏幕关闭或发生了什么?
编辑完成后。接受了答案:
我刚刚发现,如果我点击主页按钮,该应用程序在UIApplicationStateBackground进入,如果我点击的唤醒/休眠进入在UIApplicationStateInactive
以下的方法正确的答案,我的应用程序在两种情况下都会重新加载。
由于某些原因*代码*标记不起作用.. –
但似乎使用beginBackgroundTaskWithExpirationHandler,应用程序不会进入后台模式,直到任务完成,但屏幕关闭。如果我开始下载任务并关闭屏幕,则它始终处于UIApplicationStateActive状态,并且会下载所有图像 – jcesarmobile
您是否可以在主线程上下载图片? –