簡體   English   中英

iOS 應用程序的后台 BLE 掃描 State

[英]BLE Scanning in background State of iOS app

在 iOS 應用程序后台 state 中存在任何用於 BLE 通信的 API 或第三方或第三方。應用前台 state 廣告數據包增加..我怎樣才能獲得最大數量的廣告數據包.? 我正在使用服務 UUID 進行掃描。

正如 Rob Napier 所說,在后台掃描 state 與在前台 state 一樣積極地掃描在設計上是不可能的,因為系統資源較少並試圖節省電力。 這在 Apple 的核心藍牙編程指南中有詳細說明:-

對於 iOS 應用程序,了解您的應用程序是在前台運行還是在后台運行至關重要。 應用程序在后台的行為必須與在前台的行為不同,因為系統資源在 iOS 設備上受到更多限制。

雖然您可以在應用程序處於后台時執行許多與藍牙相關的任務,但請記住,當您的應用程序處於后台時掃描外圍設備的操作與您的應用程序處於前台時不同。 特別是,當您的應用在后台掃描設備時:

  • CBCentralManagerScanOptionAllowDuplicatesKey 掃描選項鍵被忽略,廣告外圍設備的多個發現合並為單個發現事件。

  • 如果正在掃描外圍設備的所有應用程序都在后台,則中央設備掃描廣告數據包的間隔會增加。 因此,發現廣告外圍設備可能需要更長的時間。

這些更改有助於最大限度地減少無線電使用並延長 iOS 設備的電池壽命。

您可以在這里找到更多信息:-

暫無
暫無

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

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