我一直在構建一個流應用程序,並且我必須實現一個系統,必須在午夜開始並在早上結束。我的問題是我無法弄清楚如何實現它。iOS,ObjC:服務在後臺運行
該系統必須在應用程序啓動時保持警惕,並且即使應用程序進入後臺時也必須繼續運行。
同時,我試圖實現一個計時器,它只運行一段時間,並在一段時間後死亡。我的應用程序不是VoiP或StandApp。官方我沒有權利運行無限的服務。無論如何,我需要一個解決方案,將在上午12點調用方法,並開始文件下載。
//and create new timer with async call:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
//run function methodRunAfterBackground
NSTimer* t = [NSTimer scheduledTimerWithTimeInterval:300 target:self selector:@selector(isNightFrame) userInfo:nil repeats:YES];
[[NSRunLoop currentRunLoop] addTimer:t forMode:NSDefaultRunLoopMode];
[[NSRunLoop currentRunLoop] run];
});
然後我試圖與UILocalnotifications
玩,但它似乎必須有用戶迭代。他必須點擊通知。
我需要一些建議,要走哪條路以及如何才能把事情做好。先謝謝你。
謝謝你的迴應。實際上,我需要啓動的服務是文件下載。當我的應用程序在後臺時,如何在LocalNotifcation被觸發後提交後臺提取?我需要實現哪個AppDelegate方法? – NCFUSN
我更新了我對此的回答。 –
對於本地通知,當通知觸發時,沒有任何方法可以調用。應用程序永遠不會知道何時觸發本地通知但是一旦你點擊通知,它就可以訪問應用程序。 – Samir