Мне нужно определить, подключен ли кабель питания (кабель USB). Все решения на SO используют широковещательный приемник для получения события изменения питания. Проблема с этим подходом заключается в том, что кабель может быть уже подключен до того, как мой приемник будет зарегистрирован, и в этом случае событие изменения не будет запущено. Мне нужен способ определить, подключен ли кабель, не полагаясь на широковещательный приемник.
Определите, подключен ли кабель питания / USB к устройству Android
comment
Описано здесь: developer.android.com/training/monitoring -device-state/ Поскольку это фиксированное намерение, вам не нужно регистрировать BroadcastReceiver..... возвращается текущее намерение состояния батареи.
- person Kuffs   schedule 24.09.2013
Ответы (1)
Проверьте эту ссылку.
public class PowerUtil {
public static boolean isConnected(Context context) {
Intent intent = context.registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
int plugged = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
return plugged == BatteryManager.BATTERY_PLUGGED_AC || plugged == BatteryManager.BATTERY_PLUGGED_USB;
}
}
person
Prmths
schedule
24.09.2013