我想知道是否有可能通過coreBluetooth爲設備充當外設以及iBacons範圍的廣告服務,同時在後臺完成這兩項任務? 實質上是爲了信標的範圍,然後如果信標在範圍內。附近或。立即範圍更新由設備通告的服務的特徵。 我可以高興地完成測距任務,雖然我已經發現設備充當外設超薄設備的信息,但我認爲我可以管理它,但是由於背景功能限制反覆停止,我想知道這種情況是否可行在我花費大量時間試圖完成事實證明每個人都知道不可能的事情之前。我對Swift和iOS一般都很陌生,所以我花了很多時間去完成很多工作。任何建議將不勝感激。 謝謝集成iBeacon和coreBluetooth外設
1
A
回答
2
這是可能的,雖然在後臺有限制。
前景:
- 正是你描述什麼是可能的。 iOS允許使用
CoreBluetooth
同時廣告Bluetooth LE服務,同時使用CoreLocation
範圍爲iBeacon。
背景:使用CoreLocation
的信標範圍內的API來僅5秒信標區域之後
iOS的限制背景的信標掃描首先檢測。您可以使用我撰寫here的博客文章中的技術將此五秒鐘的掃描時間延長至三分鐘。延長時間較長需要在Info.plist中添加一個位置背景模式,這可能會讓您的應用程序難以批准用於AppStore。
藍牙LE服務在後臺廣告在iOS上不能像在前臺廣告一樣工作。它使用Apple專有技術將服務標識符合攏成一個較小的廣告數據包,該廣告數據包在所有宣傳藍牙LE服務的應用程序之間共享。這些可能不容易發現的非iOS的藍牙LE設備:
的CBAdvertisementDataLocalNameKey廣告鍵被忽略,並且周邊的本地名稱是不公佈。 CBAdvertisementDataServiceUUIDsKey通告密鑰的值中包含的所有服務UUID都放置在特殊的「溢出」區域中;它們只能被明確掃描它們的iOS設備發現。 如果所有正在發佈廣告的應用都處於後臺,則外圍設備發送廣告數據包的頻率可能會降低。
查看獲取更多信息的藍牙周背景執行方式部here。
相關問題
- 1. iOS CoreBluetooth/iBeacon:同時發佈iBeacon和外設服務
- 2. CoreBluetooth檢測外設
- 3. 通過iBeacon檢測信標監測和測距vs CoreBluetooth scanForPeripheralsWithServices
- 4. 啓動CoreBluetooth從外設重新連接
- 5. CoreBluetooth上的外設最大數量?
- 6. CoreBluetooth標識兩個外設相同
- 7. CoreBluetooth:同時作爲中央和外圍設備運行
- 8. iOs CoreBluetooth中央服務器和外圍設備客戶端
- 9. CoreBluetooth和MFi
- 10. CoreBluetooth和BluetoothManager,設備不是BLE
- 11. CoreBluetooth - 讓所有設備連接到藍牙外設
- 12. iOS CoreBluetooth在後臺同時作爲外設和中央設備運行
- 13. 在Ionic 2中,iBeacon集成拋出「沒有提供IBeacon」的錯誤
- 14. Swift - 獲取iBeacon - 外部類
- 15. cuda集成GPU +外部設備
- 16. 設置iBeacon的主要和次要值
- 17. 從Appdelegate設置iBeacon操作和監控
- 18. Ibeacon地區封閉集?
- 19. CoreBluetooth和音頻流
- 20. CoreBluetooth和Wifi干擾
- 21. iBeacon和通知
- 22. active_record-acts_as和設計集成
- 23. CoreBluetooth設備名稱更改
- 24. IOS:寫命令值到corebluetooth外圍設備得到響應
- 25. xcode 5 CoreBluetooth未發現外圍設備的服務
- 26. 爲什麼CoreBluetooth再次發現同一個外設?
- 27. 集成gitlab和詹金斯的例外
- 28. 彈簧集成竊聽和例外
- 29. Android Wear設備作爲iBeacon
- 30. 設置iBeacon發射範圍