我在我的應用程序中使用了重要位置服務。 如果我的應用被系統強制關閉或被用戶關閉,使用重要位置更改服務事件,我將位置數據發送到我的服務器,在iOS 6中。 在iOS6中,我的應用在強制關閉後也將數據發送到服務器。 但在iOS 7中,我沒有收到這個重要的位置更改事件。ios7中的重大布告更改事件 - 後臺服務調用
回答
由於iOS 7 SDK不再處於NDA之下,爲了完成起見,我在此發佈答案。正如在這裏回答中所提到的:Monitoring regions but location icon disappears when app is killed如果用戶在應用程序切換器中殺死了應用程序,則iOS 7不允許在後臺發生重大的位置更改。
更多關於Apple forums信息,其中還包含來自蘋果公司的代表答覆如下:
如果用戶在應用程序切換器揮筆了那麼操作系統將不會推出 的應用程序,除非明確告知這樣做的用戶。所以不行,SLC將不會啓動該應用程序,也不會默認通知。此時將啓動應用的唯一 是用戶點擊 圖標。這裏的意圖是用戶已經表示他們選擇 沒有該應用程序由於任何原因再運行,所以我們承諾 那。在這種情況下,你確實無能爲力。 下一次用戶啓動應用程序,你可以讓他們知道,某些 的數據可能會丟失,雖然你真的不知道 是否有數據丟失(即你可能已被操作系統 殺死在後臺並且用戶可能沒有被移動,因此觸發任何SLC通知不會觸發任何SLC通知)。我的建議是收集 你可以在操作系統政策中的數據,如果用戶手動殺死了應用程序,那麼尊重那個願望,不要做任何事情。 如果此行爲變化導致您或您的用戶(特別是) 導致問題,請隨時提交錯誤報告。
那麼,當應用程序被殺時,沒有辦法獲取用戶位置? –
編號用戶是設備的管理員。 – Legoless
我問過[一個問題](http://stackoverflow.com/q/43317108/6536841)請看看它 –
- 1. 從後臺服務發佈的事件沒有用戶
- 2. 從後臺線程調用WCF服務
- 3. 檢查文件中更改的後臺服務
- 4. ZF2觸發服務或後臺事件
- 5. 後臺服務 - 堆大小
- 6. 小部件大小調整後的小部件佈局更改
- 7. AlarmManager不調用後臺服務
- 8. 如何在後臺調用Web服務?
- 9. javafx後臺任務:在另一個服務中調用服務
- 10. 服務器發送事件後正確應用範圍更改
- 11. 服務器控件事件不調用後調用page_clientvalidate()方法
- 12. Android:更改在後臺運行的服務的更新間隔
- 13. 在node.js中調用https web服務(代理服務器後臺)
- 14. 從活動調用後臺服務
- 15. 使用後臺服務獲取每1分鐘或每1km更改的當前位置使用後臺服務
- 16. WP7後臺服務
- 17. Android中的後臺服務,生成數據庫更改通知
- 18. 從BroadcastReceiver調用後臺服務
- 19. 在複選框的更改事件中調用服務器端的方法JSP
- 20. DNS服務器更改了事件?
- 21. 在報告服務中更改排序
- 22. 事件回調後更改wpf元素
- 23. 在報告服務中動態更改標題大小
- 24. iOS7後臺抓取
- 25. iOS7後臺抓取?
- 26. Android後臺服務
- 27. Titanium中的後臺服務
- 28. Windows最大化後調用的事件
- 29. java ee後臺服務
- 30. WordPress的 - 更改到另一臺服務器後,服務器的變化
請注意,iOS 7和Xcode 5仍然處於NDA之下,這限制了您在官方Apple Developers論壇之外討論它們。這可能是爲什麼你不會爲你的問題得到任何答案。 – rckoenes