好友
阅读权限10
听众
最后登录1970-1-1
|
猫主任
发表于 2018-2-3 21:17
动态调试的时候我实在懒得每个APP拆包再AndroidManifest.xml文件中添加android:debuggable="true"
修改boot.img本以为是很简单的事情:解包-修改-打包-刷入-完事儿。可是实践中把新的boot.img刷入后,手机一直启动不起来。甚至解包后直接打包,然后刷入手机,手机依旧起不来。经过摸索,现在成功的将修改后的boot.img刷入手机并且手机运行良好,所以总结了这篇文章。
所有操作基于linux x64系统。(网上帖子基本都不好使 因为偏移地址 每一个 机器都是不一样的)
-------------------------------------------------------------------
步骤:
一、下载“Google Nexus 7 谷歌最新官方原厂安卓4.4.4固件”,从这个ROM中提取出boot.img文件。
二、boot.img解包
运行下面的命令将会对boot.img解包,得到boot.img-kernel和boot.img-ramdisk.gz两个文件:
split-bootimg.pl boot.img
三、处理boot.img-ramdisk.gz
运行下面的命令,对boot.img-ramdisk.gz进行解压:
mkdir ramdisk
cd ramdisk
gzip -dc ../boot.img-ramdisk.gz | cpio -i
四、修改default.prop,打开系统调试标志
找到解压出来的default.prop文件,将其中的ro.debuggable=0修改为ro.debuggable=1
五、ramdisk目录打包
返回ramdisk的上层目录,输入命令:
mkbootfs ./ramdisk | gzip > ramdisk.img
上面的步骤都是一样的 下面重点来了
六、./unpackbootimg -p 2048 -i boot4.4.4.img -o boot7_3
可以获取到偏移
七、然后打包把之前这些偏移输入进去
mkbootimg --base 0x80200000 --ramdisk_offset 0x02000000 --cmdline 'console=ttyHSL0 androidboot.hardware=flo user_debug=31 msm_rtb.filter=0x3F ehci-hcd.park=3 earlyprintk' --kernel boot4.4.4.img-kernel--ramdisk ramdisk.img -o newboot.img
将新的boot.img刷入手机
这时,在windows下还是linux下就无所谓了。将手机连上电脑输入下面的命令,重启手机进入fastboot:
adb reboot bootloader
当重启手机后,将新的boot.img刷入手机:
fastboot flash boot newboot.img |
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|