问题标签 [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.
android - 如果 apk 仅使用 v2 签名方案进行签名,则获取证书指纹
v2 签名方案有效(在链接中提到)v2 签名方案 我对此几乎没有疑问。
如果 apk仅使用 v2 签名方案(而不是 v1 签名方案)进行签名,那么如何获取 apk 的证书指纹?问题是那里没有(CERT.RSA)文件。
我尝试在互联网上进行了很多搜索,但是当使用 v1 签名方案时,到处都给出了解决方案。哪些现有工具可用于提取 APK 签名块?
android - apksigner v1 方案:假
我从其他来源(apkfollow.com)下载了一个 apk 文件,以获取我的银行应用程序的旧版本。我已经apksigner
针对这个 apk 文件运行如下:
问题:
- 为什么是 v1 方案
false
?较新的 Android 版本不再需要它吗? - 我可以相信这个apk吗?如果它说
Verifies
,这是否意味着 apk 文件是应用程序的官方未修改版本(假设我知道公钥/证书具有正确的已知摘要)?
android - 使用 Apksigner 时出现“未找到中央目录记录的 ZIP 结尾”错误
我正在使用 android 构建工具 (29.0.2) 附带的 apksigner 二进制文件。首先,作为 CI/CD 流程的一部分,我将一个未签名的 apk 文件上传到 Artifactory。在签名阶段,我从 Artifactory 下载了 apk(这是成功的),并尝试使用 apksigner 对文件进行签名,如下所示:
需要提及的事情:
- 我在签名之前创建了输出 apk 文件并将文件权限设置为 775
- 我在 Linux 环境中工作
- apk 文件从 MacOS 机器上传到 Artifactory
下面的命令抛出错误:
线程“主”com.android.apksig.apk.ApkFormatException 中的异常:格式错误的 APK:不是 com.android.apksig.ApkSigner.sign(ApkSigner.java:217) 上 com.android.apksig.ApkSigner.sign 的 ZIP 存档(ApkSigner.java:193) 在 com.android.apksigner.ApkSignerTool.sign(ApkSignerTool.java:340) 在 com.android.apksigner.ApkSignerTool.main(ApkSignerTool.java:83) 引起:com.android.apksig。 zip.ZipFormatException:在 com.android.apksig.ApkSigner.sign(ApkSigner.java:215) 的 com.android.apksig.apk.ApkUtils.findZipSections(ApkUtils.java:57) 中找不到 ZIP 中央目录记录的结尾。 . 3 更多
可能是什么原因?我虽然从 MacOS 机器上传到 Artifactory 时,未签名的 apk 文件可能会以某种方式损坏。
android - 在 AGP 更新到 4.1.0 后,ApkSigner 无法签署 APK
我正在使用 Dynatrace Android 代理。作为检测的一部分,它需要使用 ApkSigner.jar 对 .apk 进行签名。在我将 Android Gradle 插件从 4.0.1 更新到 4.1.0 后,签名过程开始失败,出现以下异常:
回滚 AGP 版本后问题立即消失。
是什么导致签名失败?如何在不使用--min-sdk-version
参数的情况下修复它?
android - 从 jarsigner 迁移到 apksigner
我们目前正在使用签名我们的 Android 应用程序,jarsigner
但我们希望迁移到使用apksigner
,以便我们可以利用它的额外好处,例如 v2 签名算法。
在这种迁移中是否需要考虑任何因素,或者是否像更改我们正在使用的工具一样简单?我们主要关心的显然是避免在将更新的应用程序推送到 Play 商店时出现任何并发症。
apksigner - apksigner --v4-no-merkle-tree 选项不存在
Android 开发者文档解释说有一个选项,但该--v4-no-merkle-tree
选项不存在。我正在这样做通过 CMD 进行签名
我正在使用最新的构建工具 31.0.0-rc1。以前的版本也没有这个选项
我错过了什么?
android - Android 签名密钥更改(不是 Play 商店分布式应用程序)
我有以下情况:
我们有一个关键应用程序,它通过从我们自己的服务器(不是 Play 商店)下载的 apk 进行分发。该应用程序通过下载和安装 apk(带有 android 意图)来更新自身和另一个应用程序。这两个 apk 都由我们公司的代码签名密钥签名。
问题:
签名密钥将在 5 天后到期,我们无法更新它,因为它是 2048 位 RSA。根据一些 CA/浏览器论坛文件:
但是如果我们把私钥改成3072bit RSA,android会拒绝安装(这个我理解):
有没有比卸载和重新安装应用程序让用户更痛苦的方法? (它在全国范围内分发给 1000 多个无法执行此操作的客户)。
更改包名称对客户端来说意味着一个干净的数据库,因此这不是一个可行的解决方案。这是真的吗,我无法获得 2048 位 RSA 私钥的有效签名?有什么解决办法吗?
提前致谢!
android - Android:使用带有多证书的 ApkSigner 为 APK 签名
问题是我的应用程序 apk 使用 jarsigner 使用 sha1 signer #1 和 sha1 signer #2 签名。意思是同时使用 first-release-key.jks 和 second-release-key.jks 进行多重签名,我现在认为这是错误的。Apk 显示两个证书。现在尝试使用 sha2 signer #1 与 apksigner 签署 apk,然后使用 sha2 signer #2 失败。
https://developer.android.com/studio/command-line/apksigner
通常,您只使用一个签名者对 APK 进行签名。如果您需要使用多个签名者对 APK 进行签名,请使用 --next-signer 选项分隔一组通用选项以应用于每个签名者:
当 --next-signer 与上述一起使用时,apksigner 使用“ SigningCertificateLineage ”时出错
源代码:
在使用 --next-signer 时,任何人都可以帮助在哪里获得 SigningCertificateLineage 和随附的 SigningCertificateLineage,因此 apk 是多重签名的?
谢谢
android - 如何在命令行中使用 APKsigner 签名 APK 时应用 proguard、minifyEnabled 和 shrinkResources
我正在尝试使用 APKsigner 签署 APK 并能够在命令行中签署以下命令,
apksigner sign --ks "my keystore path" unsigned.apk
执行后询问密码并创建签名的APK。
谁能告诉我如何在命令行中使用 APKsigner 签署 APK 时应用 proguard、minifyEnabled 和 shrinkResources?
android - 如何使用 SHA256 算法签署 .apk
我有一个 .keystore 证书(10 年前生成)来签署 apk,我正在使用 android sigingCONfig 函数对其进行签名,它使用 SHA1 哈希算法进行签名,谁能告诉我如何使用现有的 SHA256 签名算法进行签名.keystore 证书?