在我的應用程序中,我正在下載一個方法的大量圖像。如何知道任務是否在後臺執行
我使用的是
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
您是否可以在主線程上下載圖片? –