蓝牙如果手动配对并已连接,获取连接的设备:
1.检测连接状态:
int a2dp = bluetoothAdapter.getProfileConnectionState(BluetoothProfile.A2DP);
int headset = bluetoothAdapter.getProfileConnectionState(BluetoothProfile.HEADSET);
int health = bluetoothAdapter.getProfileConnectionState(BluetoothProfile.HEALTH);
2,根据是否有连接获取已连接的设备:
int flag = –1;
if (a2dp == BluetoothProfile.STATE_CONNECTED) {
flag = a2dp;
} else if (headset == BluetoothProfile.STATE_CONNECTED) {
flag = headset;
} else if (health == BluetoothProfile.STATE_CONNECTED) {
flag = health;
}
if (flag != –1) {
bluetoothAdapter.getProfileProxy(MainActivity.this, new ServiceListener() {
@Override
public void onServiceDisconnected(int profile) {
// TODO Auto-generated method stub
}
@Override
public void onServiceConnected(int profile, BluetoothProfile proxy) {
// TODO Auto-generated method stub
List<BluetoothDevice> mDevices = proxy.getConnectedDevices();
if (mDevices != null && mDevices.size() > 0) {
for (BluetoothDevice device : mDevices) {
Log.i(“W”, “device name: ” + device.getName());
}
} else {
Log.i(“W”, “mDevices is null”);
}
}
}, flag);
}
最新评论