2016-02-29 9 views
0

我創建了一個跟蹤用戶在前臺以及後臺位置的應用程序。應用程序工作正常,直到我沒有移動時請求位置。我使用無聲通知來獲取位置,但在應用程序終止的情況下無法使用。當應用程序處於後臺或用戶終止時,在iOS上無需移動即可獲取用戶位置

商店上有一個應用程序Family Map。這可以完美地工作,每次打開應用程序時,它都會獲得其他設備的位置,如Now。我殺了該應用程序,我關閉了設置的通知,並且每次都獲取位置信息。我知道它沒有得到Significant location change,因爲沒有任何動作。我不確定是否NStimer或其他東西,但電池消耗非常低,如果我關閉在該設備上的互聯網,它不會得到的位置

有沒有人有一個想法如何獲得用戶何時請求它的位置?

回答

1

關閉通知將關閉顯示的通知,而不是靜音的通知,因此可以發送通知來喚醒設備並讀取位置。

但是,如果你殺了應用程序,那麼就沒有什麼可以做的,即使通知發送給它,死的應用程序也不會執行,所以沒有辦法讓應用程序按你說的去做。

另外,如果設備沒有移動,您爲什麼需要更新它的位置?只要使用前一個...

PD:你告訴的應用程序是一個AT & T應用程序,我幾乎100%確定他們使用單元格註冊信息來三角化應用程序關閉時的位置,所以如果你想要做同樣的事情,那麼你的運氣不好,除非你在手機供應商那裏......

+0

無聲通知不像通常的通知那樣可靠。我談論的應用程序不是AT&T https://itunes.apple.com/us/app/family-map-find-my-family/id1012640971?mt=8 – user2557745

+0

無聲通知*可*可靠,您的通知必須包含聲音或消息,甚至是空的消息,這就愚弄了Apple服務認爲它是接口通知,但iOS不會呈現它,並會調用您的遠程通知處理程序。 – Gusman

+0

此外,忘記了不說,你必須設置優先級爲10,關鍵是這裏:*具有此優先級的通知必須觸發目標設備上的警報,聲音或徽章。將此優先級用於僅包含可用內容密鑰的推送通知是錯誤的。* https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/APNsProviderAPI.html# // apple_ref/DOC/UID/TP40008194-CH101-SW15 – Gusman

相關問題