编程语言
首页 > 编程语言> > java – Android Wear Watch Face获取手机的电池百分比

java – Android Wear Watch Face获取手机的电池百分比

作者:互联网

我正在开发Android Wear Watch Face,我想显示手表和手机的电池百分比.我设法得到了Watch的百分比,但我是Java&的新手. Android所以请通过解释轻松上手.

private String getBatteryInfoPhone()
{
    float retVal = 0;

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

    int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);

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

    retVal = level / (float)scale;

    return Integer.toString(Math.round(retVal)) + "%";
}

这是我现在的代码,用来给我手机的百分比.
请注意,这是一个Watch Face,因此它是一项没有活动的服务.

使用此解决方案,我不断获得1%而不是实际百分比.

解决方法:

batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);

将为您提供1到100之间的值,因此您可以直接将其作为百分比插入.您不需要按比例划分它.

标签:android,java,wear-os,android-service
来源: https://codeday.me/bug/20190830/1765300.html