有誰可以告訴我如何找出連接到其他設備時使用哪種配對技術手機?
我有一個Nexus S(Android 2.3.3)和一個BT設備(藍牙2.1 + EDR)。
當我嘗試將它們配對時,我不必提供任何輸入(密鑰)。由於兩款設備都有藍牙2.1,我想知道他們使用了哪種配對技術。
我們可以指定手機的配對技巧嗎?Android藍牙配對
16
A
回答
17
當兩臺設備均爲2.1或更高版本時,使用安全簡單配對(SSP)而不是舊配對(傳統配對是需要用戶在兩臺設備上輸入相同PIN以進行連接並且大多數情況下PIN曾經是衆所周知的0000或1234的通用組合)
安全簡單配對簡化了流程,擺脫了輸入PIN碼的需要,相反它會自動生成6位密碼作爲配對過程的一部分,用戶可能只需要驗證/輸入一個或多個設備上的密鑰。
安全簡單配對(SSP)進一步具有幾種不同的關聯模式,要使用的關聯模型由試圖配對的設備上的顯示和輸入功能決定。
當沒有顯示或輸入在其中一個設備上輸入6位數字時,「Just works」關聯模型被使用,在此配對期間不需要用戶輸入。在Android中,使用createInsecureRfcommSocketToServiceRecord()API時,可以強制這個模型是SPP應用程序。沒有任何顯示或輸入能力與耳麥,其它小型設備配對時,該模型被常用
其他關聯模型是:
數字比較 - 如果兩個設備和用戶上示出了6位數字被要求確認他們是否一樣。當兩個設備都有顯示並且能夠輸入是/否時使用。密鑰條目 - 當其中一個設備只具有輸入能力且沒有輸出顯示能力,另一個具有輸出/顯示能力時,此處用戶將被要求在具有輸入能力的設備上輸入6位數字作爲顯示在支持顯示的設備上。
帶外 - 設備通過不同的頻道(除了藍牙)交換配對信息,例如NFC或其他安全機制。
4
您可以嗅探藍牙流量或記錄日誌以確定正在使用哪種技術。在Nexus-S $ adb shell中,hcidump -XVt會顯示日誌。如果I/O功能正在與其藍牙2.1配對交換。
另一種方法是在init.herring.rc文件中啓用bluetoothd日誌,您可以確定使用哪種配對方法。
它最明顯的藍牙2.1配對在你的情況和問題是在別處。
相關問題
- 1. Android中的藍牙配對
- 2. Android藍牙配對安全
- 3. Android藍牙無法配對
- 4. 藍牙配對
- 5. Android預防藍牙配對對話框
- 6. 藍牙iOS配對
- 7. createRfcommSocketToServiceRecord配對藍牙
- 8. Android藍牙配對不同的行爲
- 9. Android的藍牙,覆蓋配對提示
- 10. Android與藍牙LE設備配對
- 11. Android的藍牙配對意圖
- 12. 自動接受Android藍牙配對
- 13. 尋找Android藍牙配對設備
- 14. Android上的藍牙「帶外」(OOB)配對?
- 15. Android藍牙 - 如何發起配對
- 16. 在Android Studio中配對藍牙設備
- 17. Android以編程方式藍牙配對
- 18. 連接/配對藍牙耳機和Android
- 19. 藍牙沒有配對
- 20. 檢查藍牙配對
- 21. C# - Windows Mobile - 藍牙配對
- 22. Android藍牙,發送對象
- 23. 藍牙和藍牙LE之間的配對差異?
- 24. 配對藍牙設備與32英尺.NET藍牙庫
- 25. Android 6藍牙
- 26. Android藍牙
- 27. android藍牙
- 28. Android藍牙PBAP
- 29. TimerTask Android藍牙
- 30. Android藍牙
感謝您的回覆。我知道這些關聯模式。我想知道如何在建立連接時找出其中哪些正在使用。我試圖連接與Desire相同的設備。當連接和連接成功時,它顯示「Just works」模式。Nexus S不會發生這種情況。如何找出與Nexus S連接時發生了什麼問題。 – Ashwini 2011-03-24 03:42:59
慾望和Nexus S都是2.3.3嗎?如果是,那麼行爲應該是相同的..不連接可能是因爲別的東西 – 2011-03-24 04:11:41
慾望是2.2和Nexus是2.3.3。我認爲這是SDK錯誤,所以升級Nexus到2.3.3,但它在2.2上工作。那麼它是藍牙設備實現中的錯誤嗎? – Ashwini 2011-03-25 10:00:04