private boolean isScreenOn () {
if (android.os.Build.VERSION.SDK_INT >= 20) {
// I'm counting
// STATE_DOZE, STATE_OFF, STATE_DOZE_SUSPENDED
// all as "OFF"
DisplayManager dm = (DisplayManager) getSystemService(Context.DISPLAY_SERVICE);
Display[] displays = dm.getDisplays();
for (Display display : displays) {
if (display.getState () == Display.STATE_ON
|| display.getState () == Display.STATE_UNKNOWN) {
return true;
}
}
return false;
}
// If you use less than API20:
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
if (powerManager.isScreenOn ()) {
return true;
}
return false;
}
获取屏幕状态
最新推荐文章于 2024-07-17 14:57:38 发布