给国行XT883电信原版ROM增加通知栏快捷按钮、重启、截屏

手机:XT862,内核Verizon 906 ,底包: 国行电信版(VIP后成神制作的V906专用的卡刷包)。

接上一篇《手动给XT862增加超频功能》,把“VIP后成神” 童鞋那个ROM里缺少的几个apk给重新加进去了:

FileManager.apk
FlashPlayer.apk
GlobalNwSwitch.apk
Preloaded.apk

另外删除了几个没用的apk
rm LiveWallpapers.apk
rm MagicSmokeWallpapers.apk
rm NewsWidget.apk
rm StatusWidget.apk
另外,天气与新闻GenieWidget.apk也可以删除。

替换了SoundRecorderMot.apk (通话录音要用到它)

顶部通知栏的替换

国行电信版顶部默认是没有那一排快捷动作的。这相当的不方便。
我这里直接从oyang06制作的[Android 2.3] 折腾首发XT883 SLNCT-60.3.250 v1.2a刷机包20120805更新ROM中提取 SystemUI.apk .

先备份原版以防万一:

1
2
3
4
5
root@(unknown):/system/app# cp SystemUI.apk /sdcard-ext/_backup/
root@(unknown):/system/app# md5sum SystemUI.apk
6fdfcb5fa8a78cb3f75b37aaf95e3d19 SystemUI.apk
root@(unknown):/system/app# ls -l SystemUI.apk
-rw-r--r-- root     root               385585 2008-08-01 20:00 SystemUI.apk

把o大 修改版的SystemUI.apk push到 /system/app/ ,检查下文件正确不 :

1
2
root@(unknown):/system/app# md5sum SystemUI.apk
86295c1ee2cfb57d0fb1c3b98ce73faa SystemUI.apk

重启,发现顶部已经有一排快捷键了。

xt862-statusbar-quick-action-button.png

截屏、重启功能的添加

主要是截屏,这个涉及到了几个文件,其中有两个应该是来自CM的。
这两个文件先push上去。
/system/app/CMScreenshot.apk
/system/bin/screenshot
修改好screenshot的权限:

1
2
chown 0:2000 screenshot
chmod 0755 screenshot

后来发现,截屏时出现 ” 错误/mnt/sdcard/tmpshot.bmp (No such file or directory)“
解决办法是对该文件设置uid和gid 即可:

1
chmod +s screenshot

此解决思路来自这儿

重要文件先记着权限、用户组,md5,然后备份
权限:
root@(unknown):/system/framework# ls -l android.policy.jar
-rw-r--r-- root root 135180 2008-08-01 20:00 android.policy.jar
root@(unknown):/system/framework# ls -l framework-res.apk
-rw-r--r-- root root 4097266 2008-08-01 20:00 framework-res.apk

原版md5:
root@(unknown):/system/framework# md5sum android.policy.jar
a5f0195fcc8f0f1d9aadef438a7e2a4e android.policy.jar
root@(unknown):/system/framework# md5sum framework-res.apk
2ca65580e89115b05977f92a64be48dc framework-res.apk

备份:
root@(unknown):/system/framework# cp android.policy.jar /sdcard-ext/_backup/
root@(unknown):/system/framework# cp framework-res.apk /sdcard-ext/_backup/

root@(unknown):/system/framework# md5sum /sdcard-ext/_backup/android.policy.jar
a5f0195fcc8f0f1d9aadef438a7e2a4e /sdcard-ext/_backup/android.policy.jar
root@(unknown):/system/framework# md5sum /sdcard-ext/_backup/framework-res.apk
2ca65580e89115b05977f92a64be48dc /sdcard-ext/_backup/framework-res.apk
root@(unknown):/system/framework#

进入ss 2.10
先做个备份
然后,把用于替换的文件push到手机自带内存:
J:\参考ROM\SLNCT-60.3.250_XT883_v1.2a\SLNCT-60.3.250_XT883_v1.2a\framework>adb p
ush android.policy.jar /emmc/tmp/android.policy.jar
380 KB/s (139894 bytes in 0.359s)

J:\参考ROM\SLNCT-60.3.250_XT883_v1.2a\SLNCT-60.3.250_XT883_v1.2a\framework>adb p
ush framework-res.apk /emmc/tmp/framework-res.apk
2554 KB/s (3530953 bytes in 1.350s)

覆盖:
D:\Users\HuangYe>adb shell
~ # cd /systemorig/framework
cd /systemorig/framework
/systemorig/framework # cp /emmc/tmp/android.policy.jar .
cp /emmc/tmp/android.policy.jar .
/systemorig/framework # cp /emmc/tmp/framework-res.apk .
cp /emmc/tmp/framework-res.apk .
/systemorig/framework #

检查下权限和文件完整性:
/systemorig/framework # ls -l android.policy.jar
ls -l android.policy.jar
-rwxrwxrwx 1 root root 139894 Nov 29 16:51 android.policy.jar
/systemorig/framework # ls -l framework-res.apk
ls -l framework-res.apk
-rwxrwxrwx 1 root root 3530953 Nov 29 16:51 framework-res.apk
权限不对,要修改:

/systemorig/framework # chmod 0644 android.policy.jar
chmod 0644 android.policy.jar
/systemorig/framework # chmod 0644 framework-res.apk
chmod 0644 framework-res.apk

再看下:
/systemorig/framework # ls -l framework-res.apk
ls -l framework-res.apk
-rw-r--r-- 1 root root 3530953 Nov 29 16:51 framework-res.apk
/systemorig/framework # ls -l android.policy.jar
ls -l android.policy.jar
-rw-r--r-- 1 root root 139894 Nov 29 16:51 android.policy.jar
这下对了。

再检查文件完整性:
/systemorig/framework # md5sum android.policy.jar
md5sum android.policy.jar
7e32f3f577fa722f04d46ca567917c13 android.policy.jar
/systemorig/framework # md5sum framework-res.apk
md5sum framework-res.apk
5c1da3a979374a24f23d751cdf87128b framework-res.apk

对比:
J:\参考ROM\SLNCT-60.3.250_XT883_v1.2a\SLNCT-60.3.250_XT883_v1.2a\framework>md5su
m android.policy.jar
7e32f3f577fa722f04d46ca567917c13 *android.policy.jar

J:\参考ROM\SLNCT-60.3.250_XT883_v1.2a\SLNCT-60.3.250_XT883_v1.2a\framework>md5su
m framework-res.apk
5c1da3a979374a24f23d751cdf87128b *framework-res.apk
可见文件是OK的。

unmount sdcard , emmc , systemorig

重启。
再次进入SS 2.10 ,
执行双清。 (如果不双清,开机时会卡在第二屏不动)
抠电板, 再开机(开机时间有点久,大概要5分钟的样子)。慢慢等待吧。终于,熟悉的界面出来的。
长按关机键,熟悉的“重启”和”截屏 “~~
试下截屏,功能OK ~~
xt862-power-button-reboot-screenshot.png

更多
5 Responses Post a comment
  1. Pnnk

    - - 技术文章看不懂....但是主题好棒哦!!!

  2. Jmpxwh

    好,研究的够深的啊~我还是将就着8650吧

Leave a Reply

Note: You may use basic HTML in your comments. Your email address will not be published.

Subscribe to this comment feed via RSS