Android锁屏控制
1.锁屏时间
锁屏时间控制代码位于:frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
private void loadSystemSettings(SQLiteDatabase db) {
……
loadIntegerSetting(stmt, Settings.System.SCREEN_OFF_TIMEOUT, R.integer.def_screen_off_timeout);
……
控制数据位于:frameworks/base/packages/SettingsProvider/res/values/defaults.xml
可以找到:
60000以毫秒为单位,即1分钟,若设置为-1即不锁屏,这样修改的话,启动后依旧会进入锁屏状态,解锁之后就再也不会锁屏了。
2.禁止开机锁屏
开机锁屏代码位于:frameworks/base/policy/src/com/android/internal/policy/impl/KeyguardViewMediator.java
/**
* External apps (like the phone app) can tell us to disable the keygaurd.
*/
private boolean mExternallyEnabled = true;
由此可知默认是锁屏状态的。
查找该变量会发现如下代码:
public void setKeyguardEnabled(boolean enabled) {
synchronized (this) {
if (DEBUG) Log.d(TAG, "setKeyguardEnabled(" + enabled + ")");
mExternallyEnabled = enabled;
所以可以在程序中调用setKeyguardEnabled来控制锁屏状态。
3.与锁屏其他相关设置
留意2中的代码,会发现还有很多默认参数在此设置。
例如:
/** * How long to wait after the screen turns off due to timeout before
* turning on the keyguard (i.e, the user has this much time to turn
* the screen back on without having to face the keyguard).
*/
private static final int KEYGUARD_DELAY_MS = 5000;
这个参数就是背光熄灭后5秒内按键激活屏幕的话,不需要重新解锁。
更多相关文章
- android设置状态栏颜色
- android 保持屏幕唤醒状态
- Android 7.1 触摸事件代码跟踪
- android 开发中将十六进制 颜色代码 转换为int类型数值 方法 :
- 开源库android-state-button 为Android打造的多状态按钮
- TextView --- 内容设置成上下滑动 和 代码设置字体颜色
- 2013.04.16——— android 获取状态栏高度
- Android 9.0 P 状态栏下移的实现
- Android禁止下拉状态栏