2010-10-13 103 views

回答

3

通過發現我假設你的意思是從其他設備響應設備searchs。一些製造商也稱它爲可見的。 根據設備製造商的不同,有些設備允許開啓藍牙功能並將可見性/發現功能設置爲關閉。 所以,如果你已經知道了設備的藍牙地址(MAC地址),您可以直接連接到它,即使該設備是不可發現/可見。 在實踐中,做一件好事,很多廠家只在像在配對過程中的具體時段允許這種由具有設備可見或具有明確的菜單選項,打開發現能力的一個特定時期。 從安全角度來看,這是一個很好的做法,因爲它可以防止設備跟蹤/黑客入侵。

iPhone例如默認是不可發現時,藍牙是,(但你仍然可以連接到它)當你進入從設置菜單藍牙菜單它只是發現。

6

如果先前已與設備配對則有可能再次連接到它,即使它不是在發現模式。看到這個帖子: programmatically-connect-to-paired-bluetooth-device

// use paired devices or create a BluetoothDevice using a mac address 
    //Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices(); 
    BluetoothAdapter myAdapter = BluetoothAdapter.getDefaultAdapter(); 
    BluetoothDevice remoteDevice = myAdapter.getRemoteDevice("00:00:00:00:00:00"); 
    BluetoothSockt btSocket = remoteDevice.createRfcommSocketToServiceRecord(UUID); 
    btSocket.connect(); 
    //get input and output stream etc...