人生难得几回搏,此时不搏待何时。这篇文章主要讲述目前连接的蓝牙设备android相关的知识,希望能为你提供帮助。
我可以在android中的蓝牙设备中看到两种状态。 1.配对2.已连接。 -
我正在尝试在Android中获取当前连接的蓝牙设备。但我只从adapter.getBondedDevices();
获得配对设备列表我需要当前连接的设备。我怎么能得到这个。请有人帮助我实现这一目标。提前致谢。
答案【目前连接的蓝牙设备android】这很直截了当。 Android BluetoothManager有方法
getConnectedDevices()实施如下:
BluetoothManager manager = (BluetoothManager) getSystemService(BLUETOOTH_SERVICE);
List<
BluetoothDevice>
connected = manager.getConnectedDevices(GATT);
Log.i("Connected Devices: ", connected.size()+"");
如果您想了解有关已连接设备的更多详细信息,可以使用上面的列表方法将其置于for循环中,并获取所连接的每个蓝牙设备的内部详细信息。
日志:
12-20 18:04:09.679 14933-14933/com.salman.dleague.blescanning I/Connected Devices:: 2
希望它有用:)
另一答案在清单文件中添加此项
<
receiver android:name=".MyBluetoothReceiver" >
<
intent-filter>
<
action android:name="android.bluetooth.device.action.ACL_CONNECTED" />
<
action android:name="android.bluetooth.device.action.ACL_DISCONNECTED"
/>
<
action
android:name="android.bluetooth.device.action.ACL_DISCONNECT_REQUESTED"
/>
<
/intent-filter>
<
/receiver>
添加此类
public class MyBluetoothReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
// When discovery finds a device
if (BluetoothDevice.ACTION_ACL_CONNECTED.equals(action)) {BluetoothDevice device = intent
.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
Toast.makeText(getApplicationContext(),device.getName() +" CONNECTED",Toast.LENGTH_LONG).show();
} else if (BluetoothAdapter.ACL_DISCONNECTED
.equals(action)) {}
}
}
推荐阅读
- 使用android-beacon-library检测蓝牙设备
- Android蓝牙聊天示例无效,无法连接设备
- Android nougat(超过7.0.0)的BLE(蓝牙低功耗)无法读取数据
- 如何使用applescript打开带有quicktime播放器的MP3()
- Appium(连接到127.0.0.1:4723 [/127.0.0.1]失败:连接被拒绝:连接)
- 使用高CPU时通知。通过AppleScript或Automator()
- 在appengine-web.xml中显示“URI未注册”的Android Studio lint()
- Google Apps脚本 - 复制到现有电子表格
- 带有Firebase的Google App Engine-无法添加依赖项