1、蓝牙连接\断开连接
private void getProfileProxy() {
mAdapter.getProfileProxy(mContext, new ProxyServiceListener(), BluetoothProfile.HEADSET_CLIENT);
}
private final class ProxyServiceListener implements BluetoothProfile.ServiceListener {
@Override
public void onServiceConnected(int profile, BluetoothProfile proxy) {
Log.d(TAG,"Bluetooth service connected profile == "+profile);
if (profile == BluetoothProfile.HEADSET_CLIENT) {
isHeadSetProfileReady = true;
mHeadsetClient = (BluetoothHeadsetClient)proxy;
}
}
@Override
public void onServiceDisconnected(int profile) {
if (profile == BluetoothProfile.HEADSET_CLIENT) {
isHeadSetProfileReady = false;
mHeadsetClient = null;
}
}
}
BluetoothHeadsetClient连接设备
//获取连接状态
public int getConnectionState() {
if (mHeadsetClient != null) {
List<BluetoothDevice> deviceList = mHeadsetClient.getConnectedDevices();
if (deviceList.isEmpty()) {
return BluetoothProfile.STATE_DISCONNECTED;
} else {
return mHeadsetClient.getConnectionState(deviceList.remove(0));
}
}
return BluetoothProfile.STATE_DISCONNECTED;
}
//连接远程设备
public boolean connect(BluetoothDevice device) {
if (null != mHeadsetClient) {
return mHeadsetClient.connect(device);
}
Log.i(TAG,"connect mHeadsetClient == "+mHeadsetClient);
return false;
}
//断开连接
public boolean disconnect(BluetoothDevice device) {
if (null != mHeadsetClient) {
return mHeadsetClient.disconnect(device);
}
Log.i(TAG, "disconnect mHeadsetClient == "+mHeadsetClie