解包打包android内核system.img文件所需工具

时间:2016-10-07 08:53:24
【文件属性】:

文件名称:解包打包android内核system.img文件所需工具

文件大小:6.02MB

文件格式:RAR

更新时间:2016-10-07 08:53:24

odextools mkyaffs 2image unyaffs yaffs2img

使用方法:http://blog.csdn.net/asmcvc/article/details/11770851 工具: unyaffs,mkyaffs2image 其中unyaffs有windows版本和linux版本,mkyaffs2image只有linux版本。 windows版本的unyaffs用法: 把system.img复制到unyaffs的相同目录下,cmd命令下cd到unyaffs的目录下,然后执行命令:unyaffs system.img unyaffs会把system.img解压到其目录下。 linux版本的unyaffs用法: 把unyaffs复制到/usr/bin目录下,并修改权限为可执行。 然后cd到system.img目录下(假定目录为system目录),执行命令:unyaffs system.img 然后对system目录下的文件进行修改。 注意:修改完后的文件要修改一下权限,尽量和其他文件的权限保持一致。例如:chmod 644 framework-res.apk mkyaffs2image用法: 复制到/usr/bin目录下,并修改权限为可执行。 这里以打包system目录为system.img为例,执行命令: mkyaffs2image system system.img 然后把新生成的system.img复制替换掉原:adt-bundle-windows-x86\sdk\system-images\android-17\armeabi-v7a\system.img 执行bat批处理命令启动模拟器: D:\adt-bundle-windows-x86\sdk\tools\emulator-arm.exe -avd AndroidVM -partition-size 128 这里以修改android系统启动画面为例: 打开解包目录下的\framework\framework-res.apk 替换图片:framework-res.apk\assets\images\android-logo-mask.png为下图: 然后对\framework\framework-res.apk文件重新签名,复制到linux下后修改文件权限和原来一致。 然后mkyaffs2image system system.img打包生成新的system.img,替换原来的system.img,并启动模拟器,效果图如下: 修改代码: 工具:odextools(参考:《一键odex批量合并工具odextools的重新整理与使用》)、dexopt-wrapper 其中odextools.bat的代码: 批处理有一处bug:每打包一次会把odex文件删除掉,导致在后面的打包过程中会出现找不到:system/framework/core.odex类似的错误,因此只需要在打包完后不删除odex文件即可,找到del /f !apkx!.odex 1>nul 2>nul改为:::del /f !apkx!.odex 1>nul 2>nul,也就是注释掉这一行代码。 具体使用方法(操作在windows下): 在odextools\romdir目录下创建文件夹:system 利用unyaffs解包system.img后,把所有文件复制到system目录下。 然后运行odextools.bat,如图: 选择一个需要整合odex的目录选项即可。odextools.bat会自动设置环境变量,使用baksmali.jar来反编译odex为smali,然后再调用smali.jar打包为classes.dex, 然后再打包到相应的apk包(framework目录下对应的是jar后缀的,实际上也是个apk包),最后再重新签名。 如果要修改代码,则需要把上面重新打包生成的apk文件,利用常规方法反编译后修改smali代码,例如插桩输入log信息。然后再回编译并重新签名。 最后一步:因为system.img中的apk是优化过的,apk主目录下是没有classes.dex文件的,而是一个被优化过的odex文件,用于优化启动速度。 因此需要将修改后的apk包再用dexopt-wrapper优化apk包后生成出odex文件,然后删除apk包里的classes.dex,并在相同目录下放置与apk包同名的odex文件。 按照原system目录的文件结构组织好后,目录复制到linux环境下使用mkyaffs2image重新打包成system.img。


【文件预览】:
odextools_ok.rar
linux_tool
----dexopt-wrapper(12KB)
----mkyaffs2image(27KB)
----unyaffs(10KB)
windows_tool
----yaffs2img浏览器.exe(397KB)
----extract.bat(102B)
----unyaffs.exe(44KB)
----readme.txt(40B)
odextools_origin.rar

网友评论

  • android 4.4 unyaffs 直接已停止工作
  • unyaffs 直接已停止工作
  • 谢谢分享~可以用
  • Android5.0 系统的System.img 打包后进不去系统
  • 还行 用来打包Android5.0 系统的System.img 打包后进不去系统
  • 非常好用的工具
  • 可用使用,还有教程,不错的分享...
  • 十分感谢分享,用过了很好。
  • 不错的资源,试用一下可以达到目的
  • 好多工具,非常实用,谢谢分享
  • 楼主很用心,但是我用Window和linux都无法使用,报错:段错误 (核心已转储) 楼主能在最新版ubuntu上验证下不
  • 还是不能用
  • 不错的资源,试用一下可以达到目的, 感谢分享 但是最终没有用
  • 一直处于正在扫描img信息,无法下一步
  • win7表示无法打开unyaffs.exe
  • 工具比较基础, 可以简单用一下
  • 好多工具,非常实用,谢谢分享
  • 不好用,对android系统有限制,很多系统都进行加密使用不了~~~
  • 不少工具,很好,多谢!
  • 工具不错good
  • 根本用不了,浪费了10分
  • 还是用不了,system.img解压不出来
  • 好多工具,非常实用 .谢谢
  • 好多工具,非常实用