2011-12-07 34 views
0

如何检查USB插座是否插入(使用AC/USB充电)? (安卓版本2.1/2.2)android USB连接充电信号

我正在写一个无线充电应用程序,我想要获得不同类型的充电信号(无线,AC充电/ USB)。我使用broadcastReceiver获取充电信号,发现使用无线充电和AC充电返回相同的信号(AC充电)。 要区分无线充电和AC充电,我想检测USB插座是否插入。我尝试使用Intent.ACTION_UMS_CONNECTED来检测USB信号,但它也返回SD卡。

如何检查USB插座是否插入(使用AC/USB充电)? (android版2.1/2.2)

回答

1

检查设备与AC/USB充电,让我们试试这个,

呼叫registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED))。这将返回一个Intent,它具有在BatteryManager上定义的附加信息,以便让您知道它是否已插入。

一些与码,

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; 
    } 
}