我需要确定是否插入了电源线(USB电缆).SO上的解决方案都使用广播接收器来接收电源更换事件。这种方法的问题在于,在我的接收器注册之前,可能已经插入了电缆,在这种情况下,不会发生任何更改事件。我需要一种方法来确定是否插入电缆而不依赖于广播接收器。
答案 0 :(得分:3)
检查this link。
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;
}
}