From 3e85efa8983b11d25a9ab599dc5961f5bb799247 Mon Sep 17 00:00:00 2001 From: Andreas Shimokawa Date: Tue, 5 May 2015 22:52:25 +0200 Subject: [PATCH] Display battery level if known. Should work on Miband, untested. --- .../freeyourgadget/gadgetbridge/GBDevice.java | 2 +- .../gadgetbridge/adapter/GBDeviceAdapter.java | 8 ++++++++ app/src/main/res/layout/device_item.xml | 17 +++++++++++++---- 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GBDevice.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GBDevice.java index 114b89016..0d3492221 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GBDevice.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GBDevice.java @@ -30,7 +30,7 @@ public class GBDevice implements Parcelable { private String mFirmwareVersion = null; private String mHardwareVersion = null; private State mState = State.NOT_CONNECTED; - private short mBatteryLevel = 50; // unknown + private short mBatteryLevel = -1; // unknown private String mBatteryState; private short mRssi = RSSI_UNKNOWN; diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/adapter/GBDeviceAdapter.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/adapter/GBDeviceAdapter.java index 35e1a5221..d45c5549b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/adapter/GBDeviceAdapter.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/adapter/GBDeviceAdapter.java @@ -36,12 +36,20 @@ public class GBDeviceAdapter extends ArrayAdapter { TextView deviceStatusLabel = (TextView) view.findViewById(R.id.device_status); TextView deviceNameLabel = (TextView) view.findViewById(R.id.device_name); TextView deviceInfoLabel = (TextView) view.findViewById(R.id.device_info); + TextView batteryStatusLabel = (TextView) view.findViewById(R.id.battery_status); ImageView deviceImageView = (ImageView) view.findViewById(R.id.device_image); deviceStatusLabel.setText(device.getStateString()); deviceNameLabel.setText(device.getName()); deviceInfoLabel.setText(device.getInfoString()); + short batteryLevel = device.getBatteryLevel(); + if (batteryLevel > -1) { + batteryStatusLabel.setText("BAT: " + device.getBatteryLevel() + "%"); + } else { + batteryStatusLabel.setText(""); + } + switch (device.getType()) { case PEBBLE: deviceImageView.setImageResource(R.drawable.ic_device_pebble); diff --git a/app/src/main/res/layout/device_item.xml b/app/src/main/res/layout/device_item.xml index 00efdda39..ebc7e8bb9 100644 --- a/app/src/main/res/layout/device_item.xml +++ b/app/src/main/res/layout/device_item.xml @@ -20,7 +20,7 @@ android:orientation="vertical" android:paddingLeft="8dp"> - + +