【发布时间】:2018-03-26 21:22:01
【问题描述】:
我目前正在使用 javascript 语言开发一个项目。我所做的是将我的 apk 的扩展名重命名为 zip 文件。然后通过 JZIP 库我从 androidManifest.xml 文件中捕获数据来编辑应用程序的名称,但是这个文件是加密的,我无法编辑它。有一些方法可以将该文件解码为本机 xml,应用更改并重新编码。这可能吗?谢谢
【问题讨论】:
标签: javascript android cordova
我目前正在使用 javascript 语言开发一个项目。我所做的是将我的 apk 的扩展名重命名为 zip 文件。然后通过 JZIP 库我从 androidManifest.xml 文件中捕获数据来编辑应用程序的名称,但是这个文件是加密的,我无法编辑它。有一些方法可以将该文件解码为本机 xml,应用更改并重新编码。这可能吗?谢谢
【问题讨论】:
标签: javascript android cordova
基本上,您可以使用apktool/aapt 来解码您的AndroidManifest.xml。
如果您只想更新 AndroidManifest,请将其放回 apk 并运行它 - 它不会起作用。校验和和签名将不再有效。
如果您考虑反编译应用程序并使用更新的清单重新编译它,它可能会起作用,但结果将取决于应用程序的复杂性。请记住,您需要为应用签名。
有多个问题与你的问题相似,你可以试试看运气:
Decompile an APK, modify it and then recompile it
How to view AndroidManifest.xml from APK file?
Is it possible to edit AndroidManifest.xml after packaging the APK
【讨论】:
我找到了解决方案。首先你需要apktool.jar,然后像spring boot一样制作一个java rest API,然后用processbuilder java方法执行apktool命令。我发现以编程方式更改 appname 的唯一方法是反编译、编辑 androidManifest 和 smali 档案并使用 apktool 或 aapt 再次编译 apk
【讨论】: