[英]iOS 7 Background Timer
我有一個應用程序(iOS 7+),一旦該應用程序進入后台,我需要在“ n”分鍾(始終大於3分鍾)后調用網絡服務。 調用該Web服務后,需要每45秒調用另一個Web服務。
Web服務的調用需要用戶的當前位置。 因此,我正在使用用戶位置,並且在info.plist
文件中也有相應的條目。
我在applicationdidEnterBackground
有以下代碼
CLLocationManager * manager = [[CLLocationManager alloc]init];
__block UIBackgroundTaskIdentifier background_task;
background_task = [application beginBackgroundTaskWithExpirationHandler:^ {
[application endBackgroundTask: background_task];
background_task = UIBackgroundTaskInvalid;
}];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
[manager startUpdatingLocation];
while(TRUE)
{
//backgroundTimeRemaining time does not go down.
NSLog(@"Background time Remaining: %f",[[UIApplication sharedApplication] backgroundTimeRemaining]);
[NSThread sleepForTimeInterval:1]; //wait for 1 sec
}
[application endBackgroundTask: background_task];
background_task = UIBackgroundTaskInvalid;
});
關於我如何在后台連續運行大於3的“ n”分鍾,請您能幫我一下嗎?
請參閱后台提取處理程序。 在一定程度上可以幫助您。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.