三星G7106 ROM制作

首先声明一下我的所有操作都是在Ubuntu下进行的。

首先你得有个官方ROM。(我下的是G7106ZNUANB3_G7106CHUANB3_CHU.zip)
提取出system.img.ext4,并挂载到ubuntu中的某个目录;

删除自带的apk(在app目录),我删除的有:
116114_MS01_V4.0.apk DioDict3B Kies.odex QQInterceptService.apk SinaStockPhone2013.apk
BaiduMap_V5.0.apk DioDict3_for_Android_Phone_Samsung_Chn.apk Netease.apk QQInterceptUpdate.apk WeChat_V5.0.apk
BaiduNetdisk.apk Flipboard_V2.0.apk NetworkLocation_Baidu.apk QQ_V2013.apk WoPortal_MS01_V1.0.apk
ChatON_feature.apk GroupPlay_25.apk PolarisViewer5.apk Sinamicroblog_V3.0.apk WoStore_MS01_V3.0.apk
DaoDao_Stub.apk Kies.apk QQBrowser_V4.0.apk SinaNewsPhone2013.apk YellowPage.apk

安装Google Play:
先下载gapps-jb-20130813-signed.zip

root:
由于Android 4.3版本的内核启用了SELinux,所以之前的root方法不再适用了。
以前的方法:自己写一个su,直接调用setuid(0)和setgid(0),并把该su属性改成rwsr-sr-x。
现在的方法(即Supersu的方法):用一个有root权限的进程启动daemonsu,用户调用su时,会和已启动的daemonsu进程通信,把需要执行的命令发给daemonsu,让daemonsu来执行。
具体步骤是:
下载最新版本的Supersu.apk,用7z打开,提取出assets目录中的supersu.arm.png,并将supersu.arm.png改名为su;
将su放到xbin目录,打开etc/init.qcom.post_boot.sh,在最后添加一行:/system/xbin/daemonsu –auto-daemon &
将Supersu.apk放到app目录
然后按着这个配置xbin目录:

1
2
3
4
5
6
7
root@ubuntu:/mnt/loop/xbin# ll
total 180
drwxr-xr-x. 2 root 2000 4096 Apr 4 16:08 ./
drwxr-xr-x. 19 root root 4096 Apr 4 13:13 ../
lrwxrwxrwx 1 root root 2 Apr 4 16:08 daemonsu -> su*
-rwxr-xr-x. 1 root 2000 59748 Feb 14 12:37 dexdump*
-rwsr-sr-x. 1 root root 113036 Apr 4 16:05 su*

最后我写了个脚本重新打包system.img.ext4:

1
2
3
4
5
DST_DIR=/mnt/hgfs/g7106/G7106ZNUANB3_G7106CHUANB3_CHU/G7106ZNUANB3_G7106CHUANB3_G7106ZNUANB3_HOME
DST_FILE=system.img.ext4
#rm -f $DST_DIR/$DST_FILE
./make_ext4fs -s -l 1500M -a system $DST_DIR/$DST_FILE /mnt/loop
cd $DST_DIR && tar -cf system.tar $DST_FILE

下面就可以用odin将system.tar刷进去了,选PDA那个就好了,只刷系统目录。

刷进去后,可以再更新一下官方的更新文件:点关于设备中的系统更新。
我更新过后,基带版本是G7106ZNUANC1,内部版本号是JLS36C.G7106ZNUANB3

这个是我做的ROM:http://pan.baidu.com/s/1kT4vKuN

有问题,或不明白的地方,或对我的ROM有反馈建议/意见,请在下面留言,谢谢。

 

说明:

1.Kies.odex, Kies.apk, NetworkLocation_Baidu.apk还是别删了吧,不然会有问题;