My Android Live

Android 中保持屏幕常亮的方法

2017-03-21  本文已影响98人  小眼睛的男生

手机因电池原因,所以隔段时间会锁屏,保证正常工作.通常会很影响开发及使用.
以下是一些通过代码来实现的"禁止锁屏,保持高亮"的方法:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

需要权限
<uses-permission android:name="android.permission.WAKE_LOCK/>"

//在 onResume 方法中调用
wakeLock = ((PowerManager)getSystemService(POWER_SERVICE)).newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManage.ON_AFTER_RELEASE, TAG);
wakeLock.acquire();

// 在 onPause/ onStop/ onDestroy 方法中调用

if (wakeLock != null) {
    wakeLock.release();
}

需要权限

<uses-permission android:name="android.permission.WRITE_SETTINGS/>"

mContentResolver = getContentResolver();
setLockPatternEnabled(false);

public void setLockPatternEnabled(boolean enabled) {
    setBoolean(android.provider.Settings.System.LOCK_PATTERN_ENABLED, enabled);
}

public void setBoolean(String systemSettingKey, boolean enabled){
    android.provider.Settings.System.putInt(mContentResolver, systemSettingKey, enable ? 1: 0);
}

不需要权限

    View.setKeepScreenOn(boolean keepScreenOn);

以上方法只能屏蔽掉因系统电池管理的原因导致系统自动锁屏的原因.无法屏蔽物理锁屏按键的事件.

上一篇 下一篇

猜你喜欢

热点阅读