iOS使后臺可以運行代碼 比如定時器

iosbg 9年前發布 | 3K 次閱讀 Objective-C IOS

//后臺運行定時器

-(void)applicationDidEnterBackground:(UIApplication *)application{

UIApplication*   app = [UIApplication sharedApplication];

__block  UIBackgroundTaskIdentifier bgTask;

bgTask = [app beginBackgroundTaskWithExpirationHandler:^{

    dispatch_async(dispatch_get_main_queue(), ^{

        if (bgTask != UIBackgroundTaskInvalid)

        {

            bgTask = UIBackgroundTaskInvalid;

        }

    });

}];

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

    dispatch_async(dispatch_get_main_queue(), ^{

        if (bgTask != UIBackgroundTaskInvalid)

        {

            bgTask = UIBackgroundTaskInvalid;

        }

    });

});

</pre>

 本文由用戶 iosbg 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!