[英]didEnterRegion order of execution?
因此,我問了一個關於我與didEnterRegion相關的代碼的問題,但也許我太具體了,因此我可以請某人用更通用的術語來闡明用於區域監視的方法調用的順序,特別是當應用程序在后台運行時。
我的理解是:
這是我的理解,這可能是錯誤的,因為如果應用程序在后台運行,則不會觸發我的UILocalNotification。 有人可以弄清楚哪些位錯了嗎?
經過進一步的測試,我得出的結論是我的代碼沒有任何問題,實際上這似乎是蘋果公司對區域監控的實施不佳。 它似乎只比監視重大位置變化好一點,並且仍然依賴於wifi網絡和基站的變化。 即使在英國的一個主要城市內,我也都發現EnterRegion並沒有被觸發,直到您到達一英里寬的區域最多1000米為止(如果觸發了)。 這就解釋了為什么在通過Xcode測試並強制定位時每次都能工作的原因。
到目前為止,我所能解決的唯一問題是計算每次更新用戶位置時剩余的距離,並在小於區域radius / 2時手動調用didEnterRegion委托方法。 當您進入邊界10m以上時,這應該由Apples代碼自動完成,但是由於上述原因,我發現這樣做並不可靠。
但是,由於在后台運行該應用程序時無法使用GPS精度更高的定期更新,而這僅是在后台運行時才存在的問題,這根本不是解決方案。 :o(
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.