开始在手机上开发应用了。但是发现与机顶盒不一样,手机因为电池使用有限,所以隔段时间会锁屏,很影响开发以及使用。今天在网上查了些资料,代码上实现“禁止锁屏,保持高亮”大致有以下几种方法:
1、在每个Activity中的onCreate()中加入代码:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.controller); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); //应用运行时,保持屏幕高亮,不锁屏 findViews(); setListeners(); init(); }
2、在每个Activity中的onResume以及onPause中加入代码:
//onResume 中启用 wakeLock = ((PowerManager) getSystemService(POWER_SERVICE)) .newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.ON_AFTER_RELEASE, TAG); wakeLock.acquire(); //onPause 中禁用 if (wakeLock != null) { wakeLock.release(); }
在第2个方法中,需要加入权限:
<uses-permission android:name="android.permission.WAKE_LOCK" />
3、在每个Activity中加入代码:
mContentResolver = getContentResolver();
setLockPatternEnabled(false); public void setLockPatternEnabled(boolean enabled) { setBoolean(android.provider.Settings.System.LOCK_PATTERN_ENABLED, enabled); } private void setBoolean(String systemSettingKey, boolean enabled) { android.provider.Settings.System.putInt(mContentResolver, systemSettingKey, enabled ? 1 : 0); }
在第3个方法中,需要加入权限:
<uses-permission android:name="android.permission.WRITE_SETTINGS" />