zoukankan      html  css  js  c++  java
  • 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  

    可以找到:<integer name="def_screen_off_timeout">60000</integer>  

    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秒内按键激活屏幕的话,不需要重新解锁。

  • 相关阅读:
    总结一下矩阵的基本操作
    洛谷|P4281 [AHOI2008]紧急集合 / 聚会
    CQYZ OJ|Contest 133|祖孙询问
    博客主题分享
    USACO1.1|黑色星期五Friday the Thirteenth
    USACO1.1.2|贪婪的送礼者
    POJ1664|DFS水题
    树状数组的区间查询与区间修改
    N0lP2018爆零记录
    A了一道dijkstra板子
  • 原文地址:https://www.cnblogs.com/Efronc/p/2365539.html
Copyright © 2011-2022 走看看