ios實現無限背景工作,ios實現背景工作

來源:互聯網
上載者:User

ios實現無限背景工作,ios實現背景工作

需求

我們的app是使用心跳機制來保持使用者的登陸狀態,這樣才能收到伺服器發來的訊息和命令,但是當app進入後台以後大約3分鐘或者10分鐘之後app就會被系統掛起,使用者就會逾時下線,這樣就必須保持app長時間的後台運行

原因

app一般有三種狀態前台運行中、進入後台以及掛起狀態,當我們按home鍵或者鎖屏鍵以後app進入後台運行,根據蘋果的官方解釋,蘋果允許app運行一小段時間在後台運行,做一些處理,大約是十分鐘左右的時間,十分鐘之後app被系統強行掛起,掛起所有的操作和線程,當使用者再點擊進入此app時才會啟動線程

方案

1、app內後台無線播放音樂,Background Audio

2、後台不停的定位,Location Services

3、後台Voice Messaging Service,voip

4、報刊雜誌後台自動下載更新,Newsstand

.....

實現

我用的是後台定位,這是最簡單的方式了,經過測試一上午使用者都是線上的狀態,但是我的app是企業級的應用不需要上線,所以沒管審核的問題,此解決方案可能造成無法通過蘋果的審核

引入標頭檔

#import <CoreLocation/CoreLocation.h>

在AppDelegate.m內添加變數

@property(nonatomic,strong)CLLocationManager * locationManager;

app啟動後建立執行個體,設定代理

self.locationManager = [[CLLocationManager alloc] init];

    self.locationManager.delegate =self;

app進入後台以後,持續定位

[self.locationManager startUpdatingLocation];

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.