我正在尝试使用以下代码读取特征并获取其值
private byte[] val;
mBluetoothLeService.readCharacteristic(characteristic);// reads it
val=characteristic.getValue();
String s=new String(val);
我的应用程序崩溃并给出错误“应用程序可能在其主线程上做的工作过多。”
我也试过
private String s;
mBluetoothLeService.readCharacteristic(characteristic);// reads it
s=characteristic.getStringValue(0);
但错误是一样的
我已经调试了我的代码以检查它是否获得了价值
private String s;
mBluetoothLeService.readCharacteristic(characteristic);// reads it
s=characteristic.getStringValue(0);
system.out.println(s);
它显示正确的值,但将代码作为 Android 应用程序运行。我犯了同样的错误。