要识别Android设备的状态,可以使用以下代码示例:
private boolean isConnected() {
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
return activeNetworkInfo != null && activeNetworkInfo.isConnected();
}
private int getScreenOrientation() {
WindowManager windowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
int rotation = windowManager.getDefaultDisplay().getRotation();
Configuration config = getResources().getConfiguration();
int orientation = config.orientation;
if (rotation == Surface.ROTATION_0 || rotation == Surface.ROTATION_180) {
if (orientation == Configuration.ORIENTATION_PORTRAIT) {
return ActivityInfo.SCREEN_ORIENTATION_PORTRAIT;
} else {
return ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT;
}
} else {
if (orientation == Configuration.ORIENTATION_LANDSCAPE) {
return ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE;
} else {
return ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE;
}
}
}
private boolean isCharging() {
IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = registerReceiver(null, filter);
int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING || status == BatteryManager.BATTERY_STATUS_FULL;
int chargePlug = batteryStatus.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
boolean isUSBCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_USB;
boolean isACCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_AC;
return isCharging && (isUSBCharge || isACCharge);
}
以上是一些常见的设备状态识别方法的代码示例。你可以根据自己的需求进行适当修改和扩展。