Android Studio 作为官方推荐的 Android 开发工具,不仅提供了强大的图形化界面(GUI)支持日常开发,还通过内置的命令行工具(Command-Line Tools, CLT)赋予了开发者更高的灵活性和自动化能力,无论是通过终端直接执行构建任务、运行应用,还是结合脚本实现 CI/CD 流程,命令行功能都能显著提升开发效率,本文将详细介绍 Android Studio 中命令行工具的使用方法、常见场景及最佳实践。

命令行工具的入口与配置
Android Studio 的命令行工具主要分为两类:一是集成在 IDE 安装目录下的 bin 目录中的可执行文件(如 studio.sh/studio.bat),二是通过 SDK 管理器安装的独立命令行工具包(如 cmdline-tools),前者可直接启动 IDE 并执行部分命令,后者则提供更轻量级的命令行环境,适合服务器或自动化场景。
通过 IDE 安装目录执行
在 Android Studio 的安装目录下,bin 文件夹包含 studio.sh(Linux/macOS)和 studio.bat(Windows),通过终端执行这些文件,可以启动 IDE 并附加命令行参数。
- Linux/macOS:
./studio.sh(启动 IDE),./studio.sh --help(查看帮助) - Windows:
studio.bat(启动 IDE),studio.bat --help(查看帮助)
使用独立命令行工具包
独立命令行工具包(cmdline-tools)是更推荐的方式,尤其适合自动化流程,通过 SDK 管理器安装后,其路径通常为 $ANDROID_SDK_ROOT/cmdline-tools/latest/(Linux/macOS)或 %ANDROID_SDK_ROOT%\cmdline-tools\latest\(Windows),需将该路径添加到系统环境变量 PATH 中,以便全局调用。
- Linux/macOS:
export PATH=$PATH:$ANDROID_SDK_ROOT/cmdline-tools/latest/bin - Windows:在系统环境变量
PATH中添加%ANDROID_SDK_ROOT%\cmdline-tools\latest\bin
安装后,可通过 sdkmanager --version 验证是否配置成功。

核心命令行工具与使用场景
Android Studio 的命令行工具链涵盖了从项目构建、应用签名到设备调试的全流程,以下是常用工具及其功能:
项目构建与任务执行
Gradle 是 Android 项目构建的核心工具,Android Studio 通过 gradlew(Gradle Wrapper)简化了命令行调用,在项目根目录下,可直接执行 Gradle 任务:
- 构建 Debug 版本:
./gradlew assembleDebug(生成 APK) - 构建 Release 版本:
./gradlew assembleRelease(生成未签名的 APK) - 安装应用到设备:
./gradlew installDebug - 运行单元测试:
./gradlew test - 生成构建报告:
./gradlew assembleDebug --profile(生成 HTML 报告,位于build/reports/profile/index.html)
APK 签名与对齐
应用发布前需对 APK 进行签名(V1 或 V2 签名)和字节对齐(优化运行性能),可通过 zipalign 和 apksigner 工具实现:
- 签名 APK(使用
apksigner):apksigner sign --ks keystore.jks --ks-key-alias alias --ks-pass pass:keystore_password --key-pass pass:key_password app-release-unsigned.apk
- 对齐 APK(使用
zipalign):zipalign -v 4 app-release-signed.apk app-release-aligned.apk
注意:
apksigner和zipalign位于$ANDROID_SDK_ROOT/build-tools/版本号/目录下,需确保该路径在PATH中。
(图片来源网络,侵删)
设备调试与日志查看
通过 adb(Android Debug Bridge)可执行设备调试命令,Android Studio 的命令行工具也支持直接调用 adb:
- 启动应用:
adb shell am start -n com.example.app/.MainActivity - 查看日志:
adb logcat | grep "Tag"(过滤指定标签的日志) - 卸载应用:
adb uninstall com.example.app
模拟器管理
Android Emulator 提供命令行接口,可用于启动模拟器或查询状态:
- 列出可用模拟器:
emulator -list-avds - 启动模拟器:
emulator -avds Nexus_5X_API_30(需提前通过 AVD Manager 创建模拟器) - 通过命令行参数启动:
emulator -avd Nexus_5X_API_30 -no-snapshot-save(禁用快照以加快启动速度)
项目分析与依赖管理
- 检查项目依赖:
./gradlew dependencies(输出依赖树,便于排查冲突) - 生成依赖报告:
./gradlew dependencies > dependencies.txt(保存到文件) - 分析 APK 内容:
aapt dump badging app-release.apk(查看 APK 包名、版本号等信息,aapt位于$ANDROID_SDK_ROOT/build-tools/版本号/)
自动化与 CI/CD 集成
命令行工具是 CI/CD 流程的基础,例如在 GitHub Actions、Jenkins 中可结合 Gradle 和 SDK 工具实现自动化构建、测试和部署,以下为 GitHub Actions 示例(.github/workflows/android.yml):
name: Android CI
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: '11'
distribution: 'temurin'
- name: Setup Android SDK
uses: android-actions/setup-android@v2
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build Debug APK
run: ./gradlew assembleDebug
该流程会检出代码、配置 Java 环境、安装 Android SDK,并执行 Gradle 构建,最终生成 APK 文件。
常见问题与最佳实践
命令行执行 Gradle 任务时提示“找不到命令”
原因:gradlew 未添加到系统 PATH,或项目路径包含空格/特殊字符。
解决:
- 在项目根目录执行
./gradlew(Linux/macOS)或gradlew.bat(Windows),避免依赖全局PATH; - 若路径包含空格,用引号包裹,如
"/path/with spaces/gradlew assembleDebug"。
构建时提示“签名失败”
原因:签名文件路径错误、密码错误或未配置签名信息。
解决:
- 检查
keystore.jks路径是否正确,建议使用绝对路径; - 在
app/build.gradle中配置签名信息,避免硬编码密码:android { signingConfigs { release { storeFile file("keystore.jks") storePassword "keystore_password" keyAlias "alias" keyPassword "key_password" } } buildTypes { release { signingConfig signingConfigs.release } } }
相关问答FAQs
Q1:如何在命令行中查看 Android Studio 的日志?
A1:Android Studio 的 IDE 日志可通过以下方式查看:
- Linux/macOS:
$HOME/.AndroidStudio/system/log/idea.log - Windows:
%USERPROFILE%\.AndroidStudio\system\log\idea.log
若需查看 Gradle 构建日志,可在执行命令时添加--info或--debug参数,如./gradlew assembleDebug --info。
Q2:如何通过命令行生成 Android 项目的签名密钥库(keystore)?
A2:使用 keytool(JDK 自带工具)生成密钥库,命令如下:
keytool -genkeypair -v -keystore my-release-key.keystore -alias alias -keyalg RSA -keysize 2048 -validity 10000 -storepass keystore_password -keypass key_password
执行后按提示输入密钥信息(如 CN、OU 等),即可生成 my-release-key.keystore 文件,建议将密钥库文件保存在安全位置,并妥善保管密码。
