天天看點

android藍牙連接配接耳機分析,如何在android中擷取藍牙耳機裝置的資訊(特别是耳機裝置名稱)...

我終于解決了這個問題 . 以前我從“BluetoothAdpter”類獲得了所有綁定裝置的“getBondedDevices()”方法 . 但我通過使用“BluetoothProfile”類中的“getConnectedDevices”方法解決了這個問題 .

我的新代碼如下,其中僅顯示連接配接的藍牙耳機裝置名稱,該名稱僅連接配接到HEADSET配置檔案 .

bluetoothManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE);

bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();

bluetoothAdapter.cancelDiscovery();

bluetoothAdapter.getProfileProxy(this, listener, BluetoothProfile.HEADSET);

public final BluetoothProfile.ServiceListener listener = new BluetoothProfile.ServiceListener() {

@Override

public void onServiceConnected(int i, final BluetoothProfile bluetoothProfile) {

final TextView txt = (TextView) findViewById(R.id.textView);

List b = bluetoothProfile.getConnectedDevices();

StringBuilder stringBuilder = new StringBuilder();

for(BluetoothDevice getConnectedDevice : b){

stringBuilder.append(getConnectedDevice.getName());

}

txt.setText(stringBuilder);

}

@Override

public void onServiceDisconnected(int i) {

final TextView txt = (TextView) findViewById(R.id.textView);

txt.setText(String.valueOf(i));

}

};