编辑系统 APK 的基本步骤:
- 备份 APK。
- 反编译工作 APK。
- 做出改变。
- 重新编译工作 APK。
- 将META-INF 文件夹和 AndroidManifest.xml 从备份 APK(从未反编译)复制/粘贴到重新编译的工作 APK 中。完毕!
META-INF 包含签名:这是有道理的。但是,AndroidManifest.xml 保留原始签名的目的是什么?我自己对此进行了测试,Android 不会使用重新编译的 AndroidManifest.xml(即不是原始的 AndroidManifest.xml)加载 APK。
许多指南声明了将 META-INF 和 AndroidManfest.xml 从原始 APK 复制到修改后的 APK 的必要性。
我发现的最接近的答案是重新编译会损坏 AndroidManifest.xml(请参阅http://rootzwiki.com/topic/268-guide-newbies-how-to-port-themes/),但我比较了原始和后期重新编译 AndroidManifest.XML 并且它们是相同的(说 WinMerge 并且它们具有相同的 MD5 和 SHA1 哈希值)。另一个人 ( http://miuiandroid.com/community/threads/q-remove-miui-torch-app.16013/ ) 推测 META-INF 和 AndroidManifest.xml 以某种方式相互关联。
每个人都这样做,但有人知道为什么吗?