本帖最后由 烈火 于 2015-6-22 20:36 编辑
logcat 是Android中一个命令行工具,可用于监控手机应用程序的log信息。网上相关的教学很多,这里只想把自己折腾 2 部手机(一个是三星S4 I9500 港水,Android 5.01,一个是 NOTE4 N9108V 移动4G国行版 Android 4.4.4)的心得做个记录,这种方法个人觉得最好,同样的风险也不小。建议具有一定刷机经验的朋友看。没有任何经验的不要乱试。在测试中得到了越狱的指导,同时也用到了Cofface提供的工具,向他们表示感谢!
下面直接说说手机由 user 模式修改为 debug 模式,以便能够在 logcat 查看到 Application 进程的方法:
首先手机进入 CWM 恢复模式,用“备份和还原备份”这个功能,把手机 boot.img(只是众多备份出来的内容之一)备份出来到 SDCARD 或者外置卡,文件目录一般是在 /clockworkmod/backup/2015-06-22..... 以当时备份的日期命名的目录下。
备份完之后,单独把 boot.img 复制到电脑里。
然后通过 bootimg.exe 这个软件(暂时未找到附件上传的地方,你们先自己找找。一定要最新版本,不然不能拆包4.4.4以及5.0的boot.img),把 boot.img 拆包,命令行为:
bootimg.exe --unpack-bootimg
运行结果(我的手机是这样的,你们的我不清楚):
arguments: [bootimg file]
bootimg file: boot.img
output: kernel[.gz] ramdisk[.gz] second[.gz]
found nonstandard ramdisk_addr
found nonstandard tags_addr
found device_tree_image
base: 0x0
ramdisk_addr: 0x2600000
second_addr: 0xf00000
tags_addr: 0x2400000
page_size: 4096
name: "SYSMAGIC000K"
cmdline: "console=null androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x
37 dwc3_msm.cpu_to_affin=1"
padding_size=4096
arguments: [ramdisk file] [directory]
ramdisk file: ramdisk.gz
directory: initrd
output: cpiolist.txt
compress: True
拆包后得到一堆文件夹和文件,单独找 initrd 目录,以文本方式打开 default.prop
把这一行 ro.debuggable=0 改为 ro.debuggable=1
修改完保存,退出。
在命令行输入:bootimg.exe --repack-bootimg
运行结果:
arguments: [cpiolist file]
cpiolist file: cpiolist.txt
output: ramdisk.cpio.gz
compress_level: 6
arguments: [base] [cmdline] [page_size] [padding_size]
kernel: kernel
ramdisk: ramdisk.cpio.gz
second:
dt_image: dt_image
base: 0x0
ramdisk_addr: 0x2600000
second_addr: 0xf00000
tags_addr: 0x2400000
name: SYSMAGIC000K
cmdline: console=null androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x3
7 dwc3_msm.cpu_to_affin=1
page_size: 4096
padding_size: 4096
output: boot-new.img
修改过的 boot.img 成功输出为 boot-new.img
把 boot-new.img 复制回手机 SDCARD 中原先那个 /clockworkmod/backup/2015-06-22..... 目录下,把原 boot.img 移出这个目录放到别处备用,把 boot-new.img 改名为 boot.img 。然后重启手机,再次进入 CWM恢复模式,在“备份和还原备份“ 选恢复备份即可。
注意只需要刷修改过后的 boot.img 就行了,恢复前,请把目录里其它之前备份的文件删除。
最后,重启手机,再运行ddms,这时候可以看到你要看的内容了。
|