获取已连接智能手表的电池电量

时间:2014-09-17 07:09:16

标签: android wear-os

是否可以将连接的智能手表的电池电量作为Wear API的一部分? (优选地,不必将实际的磨损部件部署到智能手表上,然后在手表和设备之间来回通信)。我已经看到一些磨损应用程序显示手表本身的手表电池电量,但我只是想知道手表使用手机的当前电池电量

2 个答案:

答案 0 :(得分:1)

你很可能需要一个磨损应用,但它应该很容易。

在可穿戴设备上,制作一个WearableListenerService。让手机应用发送消息(使用Message APi)。这将启动手表上的WearableListenerService。让手表获取电池信息并使用其他信息将其发送回手机。

答案 1 :(得分:-2)

首先确定当前的充电状态。 BatteryManager以包含充电状态的粘性Intent广播所有电池和充电细节。

IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = context.registerReceiver(null, ifilter);

您可以通过这种方式提取当前的充电状态

// Are we charging / charged?
int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING ||
                     status == BatteryManager.BATTERY_STATUS_FULL;

你可以使用这个

public static final String EXTRA_LEVEL
Added in API level 5
Extra for ACTION_BATTERY_CHANGED: integer field containing the current battery level, from 0 to      EXTRA_SCALE.

Constant Value: "level"
     

您可以通过提取电流找到当前的电池电量   电池电量和电池状态的比例如下所示:

int level = batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = batteryStatus.getIntExtra(BatteryManager.EXTRA_SCALE, -1);

float batteryPct = level / (float)scale; // your %

所以batteryPct是您的电池百分比

  

//您可以显示您的百分比

有关来自here

的BatteryManager的更多信息