首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >apksigner:找不到命令

apksigner:找不到命令
EN

Stack Overflow用户
提问于 2022-08-27 22:57:26
回答 2查看 351关注 0票数 1

Specifications:

  • 安卓工作室版本: Android大黄蜂
  • 构建工具: 30.0.3
  • Android命令行工具: 7.0

我正在尝试使用apksigner签署apk。我正在我的Android终端中使用这个命令

代码语言:javascript
复制
apksigner sign --ks release.jks app.apk

我正在跟踪正式文件,但是我得到了这个错误

代码语言:javascript
复制
bash: apksigner: command not found

当我深入研究时,我发现Android/sdk/cmdline/7.0/bin没有apksigner,它有以下命令行工具

我在这里错过了什么?我试着下载cmdline-tools/6.03.0,但没有看到标记者。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-09-01 18:55:05

您需要在bash配置文件中添加路径变量。

我写这个答案是基于与Commansware和Pierre的讨论。

让我们讨论这些问题,以解决Android上的命令not问题。

签名人在哪里?

你可以在Android/sdk/build-tools/30.0.3找到签名者

如何使用标记符使用终端?

  1. 以绝对的方式(痛苦的方式) $ ~/Library/Android/sdk/build-tools/30.0.3/apksigner验证~/桌面/app-Relase.apk
  2. 使用$path变量(智能方式) $ apksigner验证~/Desktop/app-Relase.apk

为此,您需要在bash配置文件中设置路径变量。

如何设置路径变量?

将此添加到bash配置文件中

代码语言:javascript
复制
export PATH="$PATH:$HOME/Library/Android/sdk/build-tools/30.0.3"

现在,您应该能够在任何地方运行$ apksigner verify ~/Desktop/app-release.apk,甚至在Android终端中也是如此。

还不能在Android上运行命令吗?

在我的例子中,即使在设置了path变量之后,我也无法运行apksigner命令。于是,export PATH="$PATH:$HOME/Library/Android/sdk/build-tools/30.0.3"在Android终端上写到。而且起作用了!

额外讨论

apksigner是Android Studio CLI工具的一部分。但是我发现除了apksigner之外,其他Android工具(d8、avdmanager、aapt等)默认情况下都可以命令工作。我不知道是只有我还是别人也是这样。

票数 0
EN

Stack Overflow用户

发布于 2022-08-27 23:39:27

apksigner是SDK构建工具的一部分。因此,您应该在$ANDROID_SDK/build-tools/30.0.3/中找到它,在那里,安装了Android的地方都有$ANDROID_SDK

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73514927

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档