Android Setting中添加是否取消屏幕锁
首先,我前面有一片博客写的是
这里的解除屏幕锁就是咱们要添加的项。
先讲一下思路吧:先把界面做出来,再将是否选择的值存到系统的(adb shell进入)data/data/com.android.providers.settings/databases/settings.db数据库中的system表中,
然后在framework/base/policy/src/com/android/internal/policy/impl/KeyguardViewMediator.java的源码中取得数据库中是否选择循环桌面来执行相关代码。
先做UI:
先做UI:
在settings源码中的accessibility_settings.xml文件中添加一个checkbox:
/******************************************************/lock_screen=Settings.System.getInt(mContext.getContentResolver(), "lock_screen",0);//从数据库中取值if(lock_screen==0){ mKeyguardViewManager.hide(); mShowing = false; adjustUserActivityLocked(); adjustStatusBarLocked();} /*****************************************************/
导入包:
//add by xxnan
import android.content.ContentResolver;//从system表中取数据
import android.provider.Settings;
定义变量:private int lock_screen;//取得是否循环的值
到这里就全部修改好了,还有就是编译一下源码中的package/apps的settings源码和framework/base的policy源码,将生成的out/target/。。。/system/app下的
Settings.apk和system/framework下的android.policy.jar替换手机里system/app的Settings.apk和system/framework下的android.policy.jar就可以了。