android 获取蓝牙各种连接状态

来源:互联网 发布:西南大学网络与继续教育学院 编辑:程序博客网 时间:2024/06/05 06:20

蓝牙之间的配对及连接

//蓝牙已打开if(mAdapter.isEnabled()){int a2dp = mAdapter.getProfileConnectionState(BluetoothProfile.A2DP); // 可操控蓝牙设备,如带播放暂停功能的蓝牙耳机int headset = mAdapter.getProfileConnectionState(BluetoothProfile.HEADSET); // 蓝牙头戴式耳机,支持语音输入输出int health = mAdapter.getProfileConnectionState(BluetoothProfile.HEALTH); // 蓝牙穿戴式设备int GATT = mAdapter.getProfileConnectionState(BluetoothProfile.GATT);Log.e("lqq","a2dp="+a2dp+",headset="+headset+",health="+health);// 查看是否蓝牙是否连接到三种设备的一种,以此来判断是否处于连接状态还是打开并没有连接的状态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) {setBtState(BluetoothAdapter.STATE_CONNECTED);} else if (flag == -1) {//蓝牙手机相互配对连接NetworkInfo netInfo = ((ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE)).getNetworkInfo(ConnectivityManager.TYPE_BLUETOOTH);if (netInfo == null) {setBtState(BluetoothAdapter.STATE_ON); // discontinued} else {setBtState(BluetoothAdapter.STATE_CONNECTED); // 系统内部,返回连接与否}}} else {setBtState(BluetoothAdapter.STATE_OFF);}


0 0