android默认关闭Location服务及关闭锁屏功能

android 原生得一些默认设置,一般存储再SettingsProvider中

文件路径如下:

frameworks/base / packages/SettingsProvider/res/values/defaults.xml

1. 默认关闭Location服务

     <string name="def_location_providers_allowed" translatable="false">gps</string>

修改为<string name="def_location_providers_allowed" translatable="false"> </string>

2. 默认关闭锁屏功能

<bool name="def_lockscreen_disabled">false</bool>修改为<bool name="def_lockscreen_disabled">true</bool>


3. 存储机制

defaults.xml文件中得属性会通过DatabaseHelper类,对应得转化为数据库数据,包括system/secure/Global三个数据库。

文件路径:frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java

图1

4. 属性得使用

    所有属性得使用方式,基本一样,都是通过lock_settings得service获取属性值,然后进行逻辑处理

    获取属性得流程如下,以def_lockscreen_disabled为例:

    代码路径:frameworks/base/core/java/com/android/internal/widget/LockPatternUtils.java

    4.1  获取远程lock_settings service

图2

      4.2 由于def_lockscreen_disabled为布尔类型,所以通过getLockSettings.getBoolean方法获取相应属

      此处说明一下,def_lockscreen_disabled得值存储到数据库得key为lockscreen.disabled 

      public final static String DISABLE_LOCKSCREEN_KEY = "lockscreen.disabled";

图3
图4
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。