[RK3288][Android6.0] 调试笔记 --- 移除锁屏功能

来源:互联网 发布:虚拟化与云计算的关系 编辑:程序博客网 时间:2024/06/05 08:36
Platform: RK3288
OS: Android 6.0
Kernel: 3.10.92
Uboot: v2014.10

之前在Android4.4上通过修改KeyguardViewMediator.java里的showLocked()和doKeyguardLocked()
以及mExternallyEnabled变量来实现是可行的, 但到6.0之后第一次开机加载正常,第二次画面就异常了.

解决方法:
通过设置 ro.lockscreen.disable.default=true 可以正常实现此功能了.
可以添加到 rk3288/device/rockchip/rk3288/system.prop中.


使用到的地方:
rk3288/frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java:
/*如果为True则更新"禁止锁屏"到DB.*/
if (SystemProperties.getBoolean("ro.lockscreen.disable.default", false) == true) {
    loadSetting(stmt, Settings.System.LOCKSCREEN_DISABLED, "1");
} else {
/*否则加载
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
中的def_lockscreen_disabled属性值.*/
    loadBooleanSetting(stmt, Settings.System.LOCKSCREEN_DISABLED,
            R.bool.def_lockscreen_disabled);
}

还有一处:
rk3288/frameworks/base/services/core/java/com/android/server/LockSettingsService.java:
public void initialize(SQLiteDatabase db) {
    // Get the lockscreen default from a system property, if available
    boolean lockScreenDisable = SystemProperties.getBoolean(
            "ro.lockscreen.disable.default", false);
    if (lockScreenDisable) {
        mStorage.writeKeyValue(db, LockPatternUtils.DISABLE_LOCKSCREEN_KEY, "1", 0);
    }
}

参考:
http://blog.csdn.net/lcpangs/article/details/52243438
http://blog.csdn.net/kakaback/article/details/7264001
2 0
原创粉丝点击