问题标签 [apksigner]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
52 浏览

android - Android - 从未签名到签名的 apk 分发的转换

TL;DR:如何在未签名的版本上安装签名的 apk?

我正在开发一个应用程序,它有大约 150 个用户。该应用程序不在 Google Play 上,我将其作为我网站上的 apk 分发。

它已经实现了检查更新的机制。找到更新后,应用程序会显示带有下载按钮的对话框。单击后,apk 将下载到 Downloads 文件夹,并打算调用该文件。

自从我开始开发那个应用程序以来,我学到了很多东西,现在我想使用 apk 签名。但我可以清楚地想象在一个小对话框窗口中向 150 个用户解释卸载并再次安装该应用程序的步骤是多么痛苦。此外,他们的偏好将丢失(其中包括保存的用户名和密码)。

那么,有没有办法呢?如果没有,你有什么好的建议吗?

对用户来说如何最不痛苦?

0 投票
1 回答
3114 浏览

android - “AndroidApkSigner”任务没有为所需参数“KeyPass”指定值

存档失败,我收到的错误消息是:

没有为“AndroidApkSigner”任务提供所需参数“KeyPass”的值。

我以前从来没有遇到过这个问题。所以这发生在我什至到达“分发”选项之前。

0 投票
1 回答
489 浏览

android - 是否可以向现有应用程序添加新签名?

在这里阅读签名方案 v2 文档后,我想知道是否可以向当前应用程序添加新签名。

只是为了阐明我有一个带有签名密钥“A”的应用程序版本 1.0。我想发送带有签名密钥“A”和“B”的更新(2.0 版)。

文档中的这句话似乎证实了这种可能性,但我无法做到这一点。

如果至少找到一个签名者并且步骤 3 对每个找到的签名者都成功,则验证成功。

每次我尝试在 1.0 版之上安装 2.0 版作为更新时,我都会收到以下错误消息:

失败【INSTALL_FAILED_UPDATE_INCOMPATIBLE:包(包名)签名与之前安装的版本不匹配;无视!]

0 投票
2 回答
2101 浏览

android - apksigner - 无效的密钥库格式

https://developer.android.com/studio/publish/app-signing#signing-manually中所述,我尝试在 Windows 7 上使用 git bash 签署应用程序。

我生成了一个密钥库, keytool -genkey -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-alias 它应该使用默认的密钥库类型,这应该没问题。

然后我运行zipalign zipalign -v -p 4 my-app-unsigned.apk my-app-unsigned-aligned.apk 它给出“验证成功”(带有一个)

最后我运行 apksigner 这给了我错误:

我还尝试了不同的商店类型,比如pkcs12根本不支持(给出java.io.IOException: parseAlgParameters failed: PBE AlgorithmParameters not available:)

所以我的问题是如何找到正确的商店类型?我在帮助或互联网上找不到任何关于此的信息。

0 投票
1 回答
982 浏览

android - 如何使用 apksigner 打印 APK 证书

如何找到用于签署我的 APK 文件的证书?
这在 SO question 7104624、developer.android.com 上的 apksigner 文档和其他地方进行了讨论。他们都说在 apksigner verify 命令行上使用选项“--print-certs”。但我总是收到错误消息“不支持的选项:--print-certs。”。

我已经为 26.0.2、27.0.2 和 26.0.3 版本尝试了 apksigner.bat,结果都相同。

我可能在做一些愚蠢的事情,但我不知道那是什么。有人有类似的经历吗?

0 投票
2 回答
285 浏览

android - apksigner 一无所有返回

正如您从标题中看到的那样,我很难让 apksigner 工作。我曾尝试在 android studio 和命令行中使用终端,但它们似乎返回完全相同;一无所有。

无论我输入什么,我都会得到相同的结果。

0 投票
1 回答
539 浏览

android - Android 更新到 gradle 3.2.1 [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION] 在 Android <=6

将 gradle 工具版本从3.1.4更新到3.2.1后,无法再在 Android 6.0 上安装该应用程序,并且在发布版本中(失败 [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION])。

APK 由 3.1.4 AndroidManifest 属性生成:

APK 生成的 3.2.1 AndroidManifest 属性:

如果我将 gradle 构建工具的版本从3.2.1降级到3.1.4,那么它就可以工作。

例外:

0 投票
2 回答
52 浏览

android - apk 的语言更新

我拥有一部搭载 Android 8.1 的智能手机,其中许多应用程序都缺乏意大利语。我已经用magisk创建了工作的TWRP和根。我解压缩并反编译了受影响的 apk,更新了 values-it 上的文件,重新编译并使用 testkey 签名,但我意识到未安装应用程序,因为制造公司已使用专有密钥而不是 testkey 签署了 apk。关于如何注入我感兴趣的文件而不必签署 apk 的任何想法?

0 投票
0 回答
647 浏览

android-security - 如何解释 apksigner 输出?

我从网上下载了APK,想检查一下它的完整性和可信度。我使用过apksigner,但我不知道如何解释输出结果 - 它是否安全?官方网站不涉及此主题。

控制台输出:

0 投票
2 回答
9035 浏览

android - Apksigner 不验证签名

我试图用 apksigner 验证最新的 Gmail 应用程序(版本 8.11.25.224)的签名,但它失败了。

我用了:

apksigner verifiy --verbose --print-certs <apk.file>

结果是:

我正在寻找为什么会发生这种情况的解释,但我找不到任何解决此问题的方法。我做了一些实验,如果您添加--min-sdk-version 28到 apksigner 命令的选项,那么结果是:

如果你使用 jarsigner 工具,结果是:

-verbose使用和-certs选项重新运行以获取更多详细信息。我上传了我的 Gmail APK 文件。