我的机器是G1 + 联通WCDMA + Android 1.6 (Donut)。在原来用移动卡的时候,屏幕锁上有运营商(carrier)的标志,换成联通的卡后没有这个标志(可能是sim卡里面信息不全的缘故),光光的很是煞风景。这里说说下我修改的漫长过程。
0.check out 代码这里要checkout出donut的代码,目前google源上已经有比这个更新的版本2.1,所以不能直接拿来用,否则我想机器启动会有问题,毕竟屏幕锁是系统第一个界面。
repo init -u git://android.git.kernel.org/platform/manifest.git -b donut
如果原来用的是master也没关系,reposync时不会重新checkout所有的代码,所以会很快。然后进入项目framework/policy/base,运行命令gitdescribe可以查看当前版本,git tag察看所有tag,可以用git checkoutdonut会只签出当前project的代码(很奇怪,donut这个HEAD不在git tag里面,git水很深啊)
1.修改Java代码。
研究了源代码后,我发现如果用修改配置或者扩展类的方法是改不了这个标志的,因为很多类在初始化时就定义了hardcoding了type,扩展已有类是行不通的。于是就直接修改界面代码吧,这样也简单明了。定位framework/policy/base/phone下面的LockScreen.java,
private void refreshSimOkHeaders(CharSequence plmn, CharSequence spn) {
final IccCard.State simState = mUpdateMonitor.getSimState();
if (simState == IccCard.State.READY) {
if (plmn != null && !TextUtils.isEmpty(plmn)) {
mHeaderSimOk1.setVisibility(View.VISIBLE);
mHeaderSimOk1.setText(plmn);
} else {
mHeaderSimOk1.setVisibility(View.GONE);
}
if (spn != null && !TextUtils.isEmpty(spn)) {
mHeaderSimOk2.setVisibility(View.VISIBLE);
mHeaderSimOk2.setText(spn);
} else {
//mHeaderSimOk2.setVisibility(View.GONE);
mHeaderSimOk2.setVisibility(View.VISIBLE);
mHeaderSimOk2.setText("China Unicom");
}
最后3行是我修改的,hard coding就没啥好说的了。关于plmn和spn的区别,看这里。
2. 编译make android.policy
这里只编译这个项目,会得到一个android.policy.jar。
遇到‘convert_endian’ undeclared (first use in this function)的错误看这里,error: cast from ‘char*’ to ‘int’ loses precision的错误看这里。个人感觉新版本代码编译错误更少。
3.模拟机上测试
为了保险起见(我可就这个手机),现在emulator上运行看看。本来想直接修改sdk带的system.img省事,后来发现用mkyaffs2image生成image不能用:模拟器起不来。算了,后来我是老老实实用make snod重新生成system.img。
4.上传到真机
这又是一个很烦琐的过程:mount /system让它可写,adb push(先adb pull备份,保险…),然后,如果你跟我一样遇到Failed to copy: Permission denied.和Cross-devicelink的问题,一定要参考这个贴子,不要自己折腾了。
5.重启
分享到:
相关推荐
android九宫锁屏幕解锁
http://vs130.com/ranklist.html 最新最热门的免费源码下载 发福利,免积分,Android 屏幕锁源码
Android程序研发源码Android 屏幕锁源码
Android应用——屏幕锁源码
(安卓APP项目源代码)实用源码——Android屏幕锁源码(安卓APP项目源代码)实用源码——Android屏幕锁源码(安卓APP项目源代码)实用源码——Android屏幕锁源码(安卓APP项目源代码)实用源码——Android屏幕锁源码...
android 程序锁android 程序锁android 程序锁
安卓app开发项目-实用源码——Android屏幕锁源码(源码).zip安卓app开发项目-实用源码——Android屏幕锁源码(源码).zip安卓app开发项目-实用源码——Android屏幕锁源码(源码).zip安卓app开发项目-实用源码——Android...
Android 程序锁源码下载 摘要:Java源码,Android,Android,源码下载 Android 程序锁,Android小软件JAva源码下载,锁程序,锁屏用的,Java源码供Android程序开发者参考学习和交流
Android源码——屏幕锁源码.zip
安卓Android源码——屏幕锁源码.zip
Android源码——屏幕锁源码.7z
对产品进行测试时,写了一个获得屏幕锁的android应用程序小例子。包括了两种共三个获得锁的方法。供参考。
jquery Android屏幕解锁插件patternlock,插件要求ie8版以上浏览器,演示地址:http://www.jq22.com/jquery-info434
全能屏幕锁
android 仿制ios 屏幕数字解锁
网吧提取的屏幕锁程序,纯绿色,仅48K大小
巧用MTP协议破解Android智能手机屏幕锁密码.pdf
易语言儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁