GBDevice: update caller to use multi-battery methods

This commit is contained in:
Thomas Kuehne
2026-05-31 15:44:11 +00:00
parent 92619bb03f
commit 6be78e2b11
13 changed files with 18 additions and 18 deletions
@@ -160,10 +160,10 @@ public class Widget extends AppWidgetProvider {
views.setViewVisibility(R.id.todaywidget_battery_icon, View.GONE);
String status = String.format("%1s", deviceForWidget.getStateString(context));
if (deviceForWidget.isConnected()) {
if (deviceForWidget.getBatteryLevel() > 1) {
if (deviceForWidget.getBatteryLevel(0) > 1) {
views.setViewVisibility(R.id.todaywidget_battery_icon, View.VISIBLE);
status = String.format("%1s%%", deviceForWidget.getBatteryLevel());
status = String.format("%1s%%", deviceForWidget.getBatteryLevel(0));
}
}
@@ -178,7 +178,7 @@ public class ControlActivity extends AbstractGBActivity implements JoystickView.
}
private void setBatteryLabel() {
String level = device.getBatteryLevel() > 0 ? String.format("%1s%%", device.getBatteryLevel()) : device.getName();
String level = device.getBatteryLevel(0) > 0 ? String.format("%1s%%", device.getBatteryLevel(0)) : device.getName();
batteryPercentage.setText(level);
}
@@ -427,7 +427,7 @@ class HPlusHandlerThread extends GBDeviceIoThread {
prevRealTimeRecord = record;
getDevice().setBatteryLevel(record.battery);
getDevice().setBatteryLevel(record.battery, 0);
try (DBHandler dbHandler = GBApplication.acquireDB()) {
HPlusHealthSampleProvider provider = new HPlusHealthSampleProvider(getDevice(), dbHandler.getDaoSession());
@@ -719,7 +719,7 @@ public class AsynchronousResponse {
if (resp.multi_level == null) {
byte batteryLevel = resp.level;
this.support.getDevice().setBatteryLevel(batteryLevel);
this.support.getDevice().setBatteryLevel(batteryLevel, 0);
GBDeviceEventBatteryInfo batteryInfo = new GBDeviceEventBatteryInfo();
batteryInfo.state = BatteryState.BATTERY_NORMAL;
@@ -67,7 +67,7 @@ public class GetBatteryLevelRequest extends Request {
if (response.multi_level == null) {
byte batteryLevel = response.level;
getDevice().setBatteryLevel(batteryLevel);
getDevice().setBatteryLevel(batteryLevel, 0);
GBDeviceEventBatteryInfo batteryInfo = new GBDeviceEventBatteryInfo();
batteryInfo.state = BatteryState.BATTERY_NORMAL;
@@ -454,7 +454,7 @@ public class IGPSportDeviceSupport extends AbstractBTLESingleDeviceSupport {
public void handleFactoryData(byte[] data) throws InvalidProtocolBufferException {
Factory.factory_msg factoryMsg = Factory.factory_msg.parseFrom(data);
if (factoryMsg.hasBattaryMsg()) {
gbDevice.setBatteryLevel(factoryMsg.getBattaryMsg().getPowerPercent());
gbDevice.setBatteryLevel(factoryMsg.getBattaryMsg().getPowerPercent(), 0);
}
if (factoryMsg.getFactorySnMsgList().size() > 0) {
// save serial to volatile address now, need to find way to use it as identifier in database
@@ -240,7 +240,7 @@ public class MarstekB2500DeviceSupport extends AbstractBTLESingleDeviceSupport {
devicePrefsEdit.apply();
devicePrefsEdit.commit();
getDevice().setBatteryLevel(battery_pct);
getDevice().setBatteryLevel(battery_pct, 0);
getDevice().sendDeviceUpdateIntent(getContext());
Intent intent = new Intent(SolarEquipmentStatusActivity.ACTION_SEND_SOLAR_EQUIPMENT_STATUS)
@@ -781,10 +781,10 @@ public class QHybridSupport extends QHybridBaseSupport {
}
case "00002a19-0000-1000-8000-00805f9b34fb": {
short level = value[0];
gbDevice.setBatteryLevel(level);
gbDevice.setBatteryLevel(level, 0);
GBDeviceEventBatteryInfo batteryInfo = new GBDeviceEventBatteryInfo();
batteryInfo.level = gbDevice.getBatteryLevel();
batteryInfo.level = gbDevice.getBatteryLevel(0);
batteryInfo.state = BatteryState.BATTERY_NORMAL;
handleGBDeviceEvent(batteryInfo);
break;
@@ -164,10 +164,10 @@ public class MisfitWatchAdapter extends WatchAdapter {
}
case "00002a19-0000-1000-8000-00805f9b34fb": {
short level = value[0];
gbDevice.setBatteryLevel(level);
gbDevice.setBatteryLevel(level, 0);
GBDeviceEventBatteryInfo batteryInfo = new GBDeviceEventBatteryInfo();
batteryInfo.level = gbDevice.getBatteryLevel();
batteryInfo.level = gbDevice.getBatteryLevel(0);
batteryInfo.state = BatteryState.BATTERY_NORMAL;
getDeviceSupport().handleGBDeviceEvent(batteryInfo);
break;
@@ -57,8 +57,8 @@ public class ConfigurationGetRequest extends FileEncryptedLookupAndGetRequest im
}else if(item instanceof ConfigurationPutRequest.TimezoneOffsetConfigItem) {
device.addDeviceInfo(new GenericItem(QHybridSupport.ITEM_TIMEZONE_OFFSET, String.valueOf(((ConfigurationPutRequest.TimezoneOffsetConfigItem) item).getValue())));
}else if(item instanceof ConfigurationPutRequest.BatteryConfigItem){
device.setBatteryLevel((short) ((ConfigurationPutRequest.BatteryConfigItem) item).getBatteryPercentage());
device.setBatteryVoltage(((ConfigurationPutRequest.BatteryConfigItem) item).getBatteryVoltage() / 1000f);
device.setBatteryLevel((short) ((ConfigurationPutRequest.BatteryConfigItem) item).getBatteryPercentage(), 0);
device.setBatteryVoltage(((ConfigurationPutRequest.BatteryConfigItem) item).getBatteryVoltage() / 1000f, 0);
GBDeviceEventBatteryInfo batteryInfo = new GBDeviceEventBatteryInfo();
batteryInfo.level = (short) ((ConfigurationPutRequest.BatteryConfigItem) item).getBatteryPercentage();
@@ -58,7 +58,7 @@ public class RoidmiSupport extends AbstractHeadphoneSerialDeviceSupportV2<Roidmi
}
if (mDeviceProtocol.supportsBatteryVoltage()) {
if (getDevice().getBatteryVoltage() == -1) {
if (getDevice().getBatteryVoltage(0) == -1) {
infoMissing = true;
builder.write(mDeviceProtocol.encodeGetVoltage());
@@ -194,8 +194,8 @@ public class VescDeviceSupport extends VescBaseDeviceSupport {
fullnessPercent = Math.max(fullnessPercent, 0);
fullnessPercent = Math.min(fullnessPercent, 100);
getDevice().setBatteryLevel(fullnessPercent);
getDevice().setBatteryVoltage(voltage);
getDevice().setBatteryLevel(fullnessPercent, 0);
getDevice().setBatteryVoltage(voltage, 0);
getDevice().sendDeviceUpdateIntent(getContext());
}
@@ -275,7 +275,7 @@ public class SolarFlowDeviceSupport extends AbstractBTLESingleDeviceSupport {
int electricLevel = properties.getInt("electricLevel");
if (electricLevel != this.electricLevel) {
this.electricLevel = electricLevel;
getDevice().setBatteryLevel(electricLevel); // update event will be sent when firmware gets read
getDevice().setBatteryLevel(electricLevel, 0); // update event will be sent when firmware gets read
}
}
if (properties.has("MASTER")) {