0
BLE 개발에 새로운 소식입니다. 배터리 상태 및 비율을 보여주는 데모를 만들고 있습니다. 올바르게 작동하지만 때로는 0 %를 표시하는 경우가 있는데 이는 올바르지 않습니다. 아래와 같은 batterylevel
를 얻을 수안드로이드에서 BLE 장치의 배터리 건전지를 정확히 얻는 방법
final byte[] data = characteristic.getValue();
if (data != null && data.length > 0) {
final StringBuilder stringBuilder = new StringBuilder(data.length);
for(byte byteChar : data)
stringBuilder.append(String.format("%02X ", byteChar));
final int flag = characteristic.getProperties();
int format = -1;
if ((flag & 0x01) != 0) {
format = BluetoothGattCharacteristic.FORMAT_UINT16;
Log.d(TAG, " format UINT16.");
} else {
format = BluetoothGattCharacteristic.FORMAT_UINT8;
Log.d(TAG, " UINT8.");
}
int batterylevel = characteristic.getIntValue(format, 0);
Intent in = new Intent(getApplicationContext(), HomeActivity.class);
in.putExtra("battery_status", String.valueOf(batterylevel));
in.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(in);
finish();
}
아무에게도 도움을 줄 수 있습니까? – Sudhansu