我只能找到如何显示配对的蓝牙设备,而不是当前连接的蓝牙设备。这是显示配对的代码:
val blueToothManager=applicationContext.getSystemService(BLUETOOTH_SERVICE) as BluetoothManager
val bluetoothAdapter=blueToothManager.adapter
var pairedDevices = bluetoothAdapter.bondedDevices
var data:StringBuffer = StringBuffer()
for(device: BluetoothDevice in pairedDevices)
{
data.append(device.name + " ")
}
if(data.isEmpty())
{
bluetoothText.text = "0 Devices Connected"
val leftDrawable: Drawable? = getDrawable(R.drawable.ic_bluetooth_disabled)
val drawables: Array<Drawable> = bluetoothText.getCompoundDrawables()
bluetoothText.setCompoundDrawablesWithIntrinsicBounds(
leftDrawable, drawables[1],
drawables[2], drawables[3]
)
}
else
{
bluetoothText.text = data
val leftDrawable: Drawable? = getDrawable(R.drawable.ic_bluetooth_connected)
val drawables: Array<Drawable> = bluetoothText.getCompoundDrawables()
bluetoothText.setCompoundDrawablesWithIntrinsicBounds(
leftDrawable, drawables[1],
drawables[2], drawables[3]
)
}
有人知道如何显示当前连接的蓝牙设备和未配对的设备吗?谢谢
@穆罕默德·萨利赫,谢谢你,这很有效。我补充说:
private fun isConnected(device: BluetoothDevice): Boolean {
return try {
val m: Method = device.javaClass.getMethod("isConnected")
m.invoke(device) as Boolean
} catch (e: Exception) {
throw IllegalStateException(e)
}
}
并改变了这一点:
for(device in pairedDevices)
{
if(isConnected((device)))
data.append(" " + device.name + " ")
}
现在显示的是已连接的蓝牙设备,而不是配对的设备!同样感谢另一个帖子中的@AbdallahAbusalah:Android蓝牙连接设备
我认为没有直接的方法来检查配对的蓝牙设备是否连接,因为它可以随时更改。。我建议的最佳解决方案是列出所有配对设备,并使用返回蓝牙状态的广播接收器更改列表中的指定设备,如以下链接中所述Android bluetooth get connected devices
连接设备 接口说明 用于连接 扫描出来的蓝牙设备。 参数说明 字段 类型 必须? 说明 device RKBLEDevice 是 蓝牙设备 示例代码 Swift: RokidMobileSDK.binder.connect(device: RKBLEDevice) Objc: [RokidMobileSDK.binder connect:device]; 断开设备 接口说明 用于断开已经连接的
连接蓝牙设备 接口说明 接口需传入蓝牙名称(蓝牙address重启后会变) 参数说明 字段 类型 必须? 说明 name String 是 设备名称 举个大栗子 RokidMobileSDK.binder.connectBT(name, new IBTConnectCallBack() { @Override public void onConnectSucceed(BTDevic
我如何获得Android所有已连接蓝牙设备的列表,而不考虑配置文件? 或者,我看到您可以通过BluetoothManager获取特定配置文件的所有连接设备。获取连接的设备。 我想我可以通过ACTION_ACL_CONNECTED/ACTION_ACL_DISCONNECTED监听连接/断开来查看哪些设备连接...似乎容易出错。 但我想知道是否有更简单的方法来获取所有已连接蓝牙设备的列表。
连接和断开蓝牙设备在Windows Phone/Desktop 8.1上产生了各种结果。我一直在使用命名空间和我尝试连接具有不同蓝牙版本/类的几个设备。 版本1.2(1级和2级) 每当我尝试连接到2.0或2.1设备时,都会出现问题。第一次尝试连接到每个设备时,一切都会顺利,连接也会打开。当我随后关闭连接并重新连接设备时,问题就开始了。在重新连接期间,连接将永远不会打开,调试器将抛出一个系统。例外:
问题内容: 如何在使用Java的android中显示蓝牙设备名称?有什么代码可供我参考吗? 问题答案: 下面的代码将为您提供蓝牙名称,类型为。
我想连接第三方蓝牙设备到我的Android Wear手表(三星Gear Live)。我试图找到留档如何做到这一点,但我没有任何运气。所有的搜索,我似乎都认为我想连接到手机上。 有谁知道一个很好的例子来演示如何将蓝牙心率监视器(或其他设备)连接到Android Wear,以便我在手机不存在时保存历史记录?这可能吗?它是否与从手机/平板电脑上执行相同的协议?