簡體   English   中英

自Xcode 6.3以來新的可能的iBeacon監視問題

[英]New Possible iBeacon Monitoring Issue since Xcode 6.3

所以這是細分

所有Swift語言配置1:Xcode 6.3與任何版本的iOS 8.1+

配置2:Xcode 6.2在任何版本的iOS 8.2和更低版本中,由於XCode 6.3需要構建到iOS 8.3設備。

在兩個測試中都為Iphone 5 / Ipod 5thGen。

在CONFIG#1期間,在我們的應用程序中,我們監視主區域(無主要/次要的UUID)。 輸入事件引發后,我們還將開始監視具有相同UUID但已分配了主要/次要成員的子區域。 進入具有多個較小區域的“主”區域后,僅刪除其中一個區域后,便會調用CLLocationManager的函數didExitRegion,但該功能將與主區域一起調用,而不是按預期的方式與子區域一起調用。 當我們退出所有子區域時(因此退出主要區域),我們得到2個回調,這兩個回調都針對主要區域。

我們期望的預期行為是,當您退出子區域而不是主區域時,您將獲得對該子區域的回叫。 退出最后一個子區域時,您會收到2個回調,一個來自子區域,另一個來自主區域。
這是在Apple文檔中記錄的行為,並且還表明它如何在我們的CONFIG#2中工作,也就是直到Xcode版本6.3(基本上是在Xcode升級之前如何工作)。

我真正的問題:是否還有其他人遇到這個問題,並且有人知道有什么可能的解決方法來獲取didExitRegion調用以返回正確的CLRegion。 我還使用了我們公司的開發人員之一來幫助支持事情,希望蘋果自己可以回答問題,因為這似乎是xcode處理OS調用的很大一部分。 因此,如果我收到他們的回音,我會將其張貼在下面。
預先抱歉,這只是我的第二個或第三個問題,仍然很棘手。
編輯:沒關系,我是一個巨大的傻瓜,我通過不小心復制粘貼了一些我為其他問題解決的代碼而覆蓋了變量。

這只是一個想法...

startMonitoringForRegion:

您必須為要監視的每個區域調用一次此方法。 如果應用已在監視具有相同標識符的現有區域,則舊區域將被新區域替換。

嘗試先注冊較小的區域。 也看看monitoredRegions在運行時,看看它是否包含你所期望的。

您沒有正確設置didEnterRegion and didExitRegion的條件,這不是xcode的問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM