问题标签 [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 投票
0 回答
13 浏览

permissions - 在窗口上使用 Apksigner 后,Apk 操作系统权限发生了变化

我需要使用 apksigner 命令在 IIS 服务器上签署我的 apk,但之后我在访问时遇到 401 错误。

检查 apk 文件的操作系统权限时,发现以下差异:

签约前:

在此处输入图像描述

后:

在此处输入图像描述

缺少 IUSR 访问权限,apksign 工具是否会更改文件操作系统权限?

0 投票
1 回答
418 浏览

apk - 我的自签名 APK 被 Play Protect 屏蔽

我是使用 Windows 7 X64 的家庭用户。我的签名 APK 有问题。
我的应用程序仅供家庭使用和学习。我不会提交给 Google Play。
安装后会显示

被 Play Protect 屏蔽。
Play Protect 无法识别此应用的开发者。
来自未知开发者的应用有时可能不安全。

工具:

批处理脚本:

我的钥匙被锁了:

我从互联网上下载了一些 APK 并没有被阻止。

我从互联网上下载了 KEY.PK8 和 CERT.PEM 并没有被阻止。

我的步骤有什么问题?我切换到密钥库(KEY.JKS),它也没有用。

0 投票
1 回答
104 浏览

android - Android 使用商店类型 Windows-MY 使用 apksigner 签署 apk

我正在尝试为我的应用程序使用 APK Signature Scheme v2 作为针对 Android 11 更改的一部分。到目前为止,我在构建机器上使用 jarsigner 使用 storetype Windows-MY(Windows 上的密钥存储类型)对 apk 进行签名,如下所示:

现在我想使用 apksigner 对 apk 进行签名,但我正在努力寻找一种将商店类型 Windows-MY 与 apksigner 一起使用的方法。有谁知道如何实现这一目标?

先感谢您。

0 投票
0 回答
26 浏览

android - 是否可以将证书(不知道私钥)添加到 apk 的签名块?

我有一个由我的自签名证书签名的应用程序。我希望将证书(我没有私钥)添加到我的 apk 受信任证书列表中;安装这个新的 apk 并添加受信任的证书。

我可以知道仅使用新证书签署我的 apk(使用签名 API,因此我没有私钥)并成功更新我设备上的应用程序吗?

0 投票
0 回答
38 浏览

android - 使用终端签署未签名的 apk

在开发、签名等方面,我相当新手,因此,我在 MAC 上使用终端签署未签名的 apk的过程中寻求一些帮助。

我工作的公司获得未签名的 apk,我通过脚本运行该脚本,该脚本在将 apk 上传到商店之前对其进行签名。该脚本使用我们的密钥库并运行 jarsigner 和 zipalign 以生成签名的 apk。

我现在遇到的问题是我们收到的最新版本是使用Android SDK API 级别 30编译的,尽管脚本仍然设法对构建进行签名,但在将构建上传到商店时,我收到一条错误消息,指出"需要签名方案版本 2 或更高版本"

现在看来,签名方案版本 2 及更高版本必须使用apksigner而不是jarsigner来对构建进行签名,但是,我似乎无法使用 Android 开发人员和我偶然发现的其他博客提供的说明找到一种方法来完成这项工作.

有人愿意为这个过程提供一些方向/指导吗?如果有什么我需要澄清或说明的,请告诉我。

最欣赏。

0 投票
0 回答
178 浏览

android - 无法再签署我的 google play 的 apk(jarsigner 不再工作,无法使 apksigner 工作)

自 2010 年左右以来,我在 Play 商店中有一个应用程序。我用来签署 apk 的密钥库是在这个时候创建​​的。

直到今天,我都可以使用以下命令行对 apk 进行签名:

jarsigner -storepass XXXX -keypass XXXX -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore YaDuSurfAndroid.jks air.com.yadusurf.yadusurf.apk 1

我使用来自 JDK 版本的 apksigner:jdk1.7.0_80(见注 1)

但最近 Google Play 控制台拒绝了我签名的 apk :

You uploaded an APK with an invalid signature (…) Error from apksigner : MIN_SIG_SCHEME_FOR_TARGET_SDK_NOT_MET: Target SDK version 30 requires a minimum of signature scheme v2: the APK is not signed with this or a later signature scheme.

我的理解是 jarsigner 太旧 (链接),我必须使用 apksigner 选项 --v2-signing-enabled 设置为 true 所以这是我的新命令行:

apksigner sign --v1-signing-enabled true --v2-signing-enabled true --ks myfile.jks --in input-zipped.apk --out output.apk (见注2)

但它返回此异常:

引起:java.io.IOException:DerInputStream.getLength():在 sun.security.util.DerInputStream.getLength(DerInputStream.java:606) 在 sun.security.util.DerValue.(DerValue.java: 258)

我的理解是我的密钥库太旧了(是用现在太旧的 jdk 生成的)(链接)

问题 :

我的命令行有问题,还是我必须更新/转换我当前的密钥库?

在最后一种情况下,你知道如何进行这种转换吗?

(注 1)对于更高版本,aspsigner 无法使用其他版本签署 apk,但我没有错误。

(注 2)执行此命令行时,提示我输入“签名者 #1 的密钥库密码”。在这里,我尝试输入 jarsigner 命令行的“storepass”和“keypass”;两者都生成指定的异常。

0 投票
1 回答
171 浏览

android - Android Studio 和 apksigner 不会使用 v1 签名对应用进行签名

我有一个应用程序,minSdkVersion = 24但是当我使用 Android Studio 签名对话框时,apk 永远不会被 v1 签名(我使用的商店强制包含 v1 签名)。我尝试了 gradle 选项,但它不起作用。另外,我尝试使用带有选项的 apksigner--v1-signing-enabled true--max-sdk-version 23强制 v1 签名,但它似乎不起作用。apksigner verify还报告说该 apk 未使用 v1 签名。

有没有办法强制 Android Studio 或 apksigner 始终使用 v1 签名minSdkVersion >= 24

0 投票
1 回答
30 浏览

android - 是否可以在没有 JAR v1 标志的情况下构建和上传适用于 Android 5/6 的 apk 文件?

我们的 Android 应用程序的用户拥有 Android 5 和主要版本,我们知道有一个安全补丁可以避免在他们中出现 Janus 漏洞,从而允许旧的 Android 版本接受 .apk 的 v2 标志。然后,我们尝试为 Android 5 或主要版本构建一个没有 JAR v1 标志(enableV1Signing false)的 .apk,并且构建工作正常。但是随后 apksigner 说“不验证”,当我们尝试将 .apk 上传到商店时,它也被拒绝了。那么,是否可以避免 Android 5 或主要版本的 v1 标志?如果没有,我们如何发布应用程序,不包括没有安装 Janus 安全补丁的 Android 5 和 6 用户?提前致谢。

0 投票
0 回答
26 浏览

android - 如何为 Android APK 文件启用 v3 和 v4 应用程序支持

我已将以下命令粘贴到终端/命令提示符中,并从以下图像文件中找到了输出。那么如何启用或将v3 和 v4 签名方案设置为true,而当前正在变为false

java -jar /Users/Admin/Library/Android/sdk/build-tools/31.0.0/lib/apksigner.jar verify -v --print-certs /Users/Admin/Downloads/TestApp.apk

在此处输入图像描述

问题:

  1. 我是否必须更改应用级别build.gradle文件中的任何内容?
  2. 目前我指的是v3 和 v4 签名方案
    2.1 v3 签名方案的以下站点: https
    ://source.android.com/security/apksigning/v3 2.2 v4 签名方案: https ://source.android.com/security /apksigning/v4