標籤:
http://www.ithao123.cn/content-1363653.html
定期更新資料的app,比如及時通訊類,微博等app
設定->通用->後台應用程式重新整理。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中添加:
[[UIApplication sharedApplication] setMinimumBackgroundFetchInterval:UIApplicationBackgroundFetchIntervalMinimum];
MinimumBackgroundFetchInterval參數值是兩次Fetch時間間隔,不能保證每隔這個時間間隔都會調用。這裡設定為UIApplicationBackgroundFetchIntervalMinimum,意思是儘可能頻繁的調用我們的Fetch方法。
二,增加實現Fetch方法
- (void)application:(UIApplication *)application performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{};
每次系統Fetch時都會調用該方法,我們可以在該方法中做重新整理資料等操作,操作執行完成以後要調用completionHandlerblock(),比如:completionHandler(UIBackgroundFetchResultNewData);文檔中說系統會根據completionHandler(執行的時間)來估計此次Fetch的耗電等。如果耗時耗電比較多,可能會降低被調用的次數。但這個方法也不是不限時執行的,說是有30s的時間來執行操作。completionHandler有三個參數:
UIBackgroundFetchResultNewData 成功拉取資料
UIBackgroundFetchResultNoData 沒有新資料
UIBackgroundFetchResultFailed 拉取資料失敗或者逾時
IOS Background 之 Background Fetch