
1 - (void)applicationDidEnterBackground:(UIApplication *)application 2 { 3 [[UIApplication sharedApplication]setApplicationIconBadgeNumber:0];//進(jìn)入前臺(tái)取消應(yīng)用消息圖標(biāo) 4 5 6 UIApplication* app = [UIApplication sharedApplication]; 7 8 __block UIBackgroundTaskIdentifier bgTask; 9 10 bgTask = [app beginBackgroundTaskWithExpirationHandler:^{11 12 dispatch_async(dispatch_get_main_queue(), ^{13 14 if (bgTask != UIBackgroundTaskInvalid)15 16 {17 18 bgTask = UIBackgroundTaskInvalid;19 20 }21 22 });23 24 }];25 26 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{27 28 dispatch_async(dispatch_get_main_queue(), ^{29 30 if (bgTask != UIBackgroundTaskInvalid)31 32 {33 34 bgTask = UIBackgroundTaskInvalid;35 36 }37 38 });39 40 });41 42 }
好了,這就是我的解決辦法,不用系統(tǒng)的電話服務(wù)照樣可以喚醒程序不被睡眠,導(dǎo)致后臺(tái)推送不過(guò)來(lái)消息。。
謝謝大家,我們以后可以多多學(xué)習(xí),多多進(jìn)步。。
PS:不知道別的辦法是什么,有別的辦法的可以給我留言,我們一同探討。。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注