BluetoothAdapter.StartDiscovery 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
開始遠端裝置發現程序。
[Android.Runtime.Register("startDiscovery", "()Z", "")]
[Android.Runtime.RequiresPermission("android.permission.BLUETOOTH_SCAN")]
public bool StartDiscovery();
[<Android.Runtime.Register("startDiscovery", "()Z", "")>]
[<Android.Runtime.RequiresPermission("android.permission.BLUETOOTH_SCAN")>]
member this.StartDiscovery : unit -> bool
傳回
成功時為真,錯誤時為假
- 屬性
備註
開始遠端裝置發現程序。
發現過程通常包含約 12 秒的查詢掃描,接著掃描每個新裝置的頁面以取得其藍牙名稱。
這是非同步通話,會立即回傳。 登記並#ACTION_DISCOVERY_STARTED#ACTION_DISCOVERY_FINISHED登記意向,以確定發現的開始與完成時間。 註冊以 BluetoothDevice#ACTION_FOUND 接收發現遠端藍牙裝置的通知。
裝置發現是一項繁重的程序。 在發現過程中不應嘗試與遠端藍牙裝置的新連線,現有連線將面臨頻寬受限且延遲高。 用 #cancelDiscovery() 來取消正在進行的發現。 發現不是由活動管理,而是作為系統服務執行,因此即使應用程式沒有直接請求發現,也應該隨時呼叫 BluetoothAdapter#cancelDiscovery() ,以防萬一。
裝置發現只會找到目前 可被發現 的遠端裝置(啟用查詢掃描)。 許多藍牙裝置預設無法被偵測,必須進入特殊模式。
如果藍牙狀態不是 #STATE_ON,這個 API 會回傳 false。 開啟藍牙後,等待 #ACTION_STATE_CHANGED with #STATE_ON 才能取得更新的數值。
如果裝置正在綁定,該請求會在該裝置完成綁定後排隊並執行。 如果請求已經排隊,該請求將被忽略。
Java 文件 android.bluetooth.BluetoothAdapter.startDiscovery()。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。