В поиске, чтобы показать уровень заряда батареи в Wear OS, я попробовал многие из методов, но мне все еще не хватает некоторых важных моментов, которые мешают мне решить мою проблему.
В одном из ответов( Получить уровень заряда батареи и состояние в Android ), я нашел следующий код:
public static float getBatteryLevel(Context context, Intent intent) {
Intent batteryStatus = context.registerReceiver(null,
new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
int batteryLevel = -1;
int batteryScale = 1;
if (batteryStatus != null) {
batteryLevel = batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, batteryLevel);
batteryScale = batteryStatus.getIntExtra(BatteryManager.EXTRA_SCALE, batteryScale);
}
return batteryLevel / (float) batteryScale * 100;}
По понятным причинам я не могу поместить его в метод onCreate()
, так как он имеет возвратзаявление.Кроме того, я не должен помещать его в метод onDraw()
, чтобы не перегружать его вычислениями.
Где именно я должен поместить этот код, чтобы он работал?