應用能夠調用UIApplication
的beginBackgroundTaskWithExpirationHandler
方法,讓應用最多有10分鐘的時間在後臺長久運行。這個時間能夠用來作清理本地緩存、發送統計數據等工做。代碼以下:git
// AppDelegate.h文件
@property (nonatomic, assign) UIBackgroundTaskIdentifier backgroundUpdateTask;
// AppDelegate.m文件
- (void)applicationDidEnterBackground:(UIApplication *)application {
[self beginBackgroundUpdateTask];
// 在這裏加上你須要長久運行的代碼
[self endBackgroundUpdateTask];
}
- (void)beginBackgroundUpdateTask{
self.backgroundUpdateTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
[self endBackgroundUpdateTask];
}];
}
- (void)endBackgroundUpdateTask{
[[UIApplication sharedApplication] endBackgroundTask:self.backgroundUpdateTask];
self.backgroundUpdateTask = UIBackgroundTaskInvalid;
}
複製代碼
附:個人博客地址github