3

我正在尝试检查 APK 上的签名信息。文档说要使用

jarsigner -verify -verbose -certs app.apk

并且各种SO问题都同意。但是如果我抓住 JDK 1.7 并这样做,我会得到错误:

Please specify alias name

考虑到谷歌搜索错误消息只返回指向 jarsigner 源的链接,这很难处理。

这是怎么回事?

4

3 回答 3

3

只有在签署 APK 时才需要别名。你用的是什么版本的JDK?是 Sun/Oracle JDK 吗?

顺便说一句,您不应该使用 Java 7 进行 android 开发,它不受官方支持。另请注意,jarsigner 默认摘要算法已更改,因此如果您未明确指定摘要算法,使用 Java 6 和 Java 7 进行签名将产生不同的结果。

于 2011-12-07T03:35:10.260 回答
2

如果别名包含空格,我发现可能会发生相同的错误:

ALIAS WITH SPACES
我设法通过用引号指定别名来克服这个问题。这甚至适用于 Maven 文件的属性:
'ALIAS WITH SPACES'

于 2013-07-25T11:34:55.347 回答
1

使用:
$ jarsigner -verify -verbose -certs app.apk

应用程序 > 构建 > 输出 > apk路径

如果您看到 CN 短语,那么您的 .apk 是“调试”,

否则恭喜!你签署了你的 .apk,现在它的“发布”。

于 2017-01-02T11:51:50.397 回答