1

如果我有一个 JAR(Android APK),并且我是这样签名的:

jarsigner -keystore my.keystore someApk.apk myAlias

我如何取消签名?因为如果我以 zip 文件的形式打开它并尝试提取 AndroidManifest.xml,它们都会搞砸。

4

2 回答 2

3

如果您不关心清单和其他元信息(您可能不关心,因为您只想提取资源),您可以使用 提取文件jar -xvf myjar.jar,删除 META-INF 目录,然后创建一个新的(未签名的 jar )。

如果您确实关心元信息,请查看了解签名和验证以了解签名的作用。您应该能够通过编辑清单并删除 jar 的 META-INF 目录中的签名文件来取消对 jar 的签名。

以上内容可能会回答您的问题,但可能无法解决您的问题,因为我不确定拥有签名的 jar 会如何导致资源“混乱”。资源本身不受签名过程的影响。如果你只是通过 jar 命令本身提取资源(如上面第二段),你还有问题吗?

于 2009-03-25T01:54:20.333 回答
1

事实证明,这个问题根本与签名无关——这是因为 XML 文件被编译了。要查看此文件的内容,您必须使用该aapt工具。

于 2009-08-01T05:35:12.783 回答