2013-01-18 135 views
0

iOS5。我有一個CLLocationManager正確設置,它監聽區域進入/退出。 它一切正常。但是,當我殺了我的應用程序,並且我進入了一個區域時,我收到了一個本地通知(它在didEnterRegion方法中定義),並且它再次啓動了我的應用程序。這是標準行爲還是還有其他事情正在發生?我認爲它會在後臺啓動應用程序,執行didEnterRegion:並在一段時間後再次自殺。我需要做的就是在didEnterRegion內部打一個HTTP電話:didEnterRegion當應用程序未運行時

任何人處理類似的事情?

回答

2

這是預期的行爲。 當您的應用程序未運行但爲您的應用程序註冊地理圍欄邊界時,它將啓動並觸發回調。 之後它不會被殺害,除非系統決定,它需要記憶。

不要擔心,即使您的應用程序已啓動,您的應用程序仍將處於休眠狀態,因此不會出現速度/電池/等的損失。

看到文檔:

處理過境活動的地區

每當用戶的當前位置越過邊界區域,該 系統生成適當區域的事件爲您的應用程序。如果您的應用程序 已在運行,則這些事件將直接轉至任何 當前位置管理器對象的代理。如果您的應用程序未運行,則系統會在後臺啓動它,以便它可以響應。應用程序可以使用 實施以下方法來處理邊界過境點:

相關問題