Windows不安装 Android Studio如何打包安卓软件

我已经成功跑起来了,只用命令行就可以打包。用任何一个ide都可以写代码,尤其是ai时代。我这里克隆了一个开源的安卓项目,想把它在我电脑上打包成apk,以下是需要的环境。

安装Android SDK

使用Command line tools only

我用的是这个方法

步骤 1:下载 Android SDK 命令行工具

  1. 访问:https://developer.android.com/studio#command-line-tools-only

  2. 下载 Command line tools only 的 Windows 版本

步骤 2:安装 SDK

假设下载后解压到 C:\android-sdk(安装到哪都行,这只做示范),然后运行:(重点是两个环境变量弄好,步骤2和3都要在命令行里跑)

复制代码
# 设置环境变量
$env:ANDROID_HOME = "C:\android-sdk"
$env:ANDROID_SDK_ROOT = "C:\android-sdk"
​
# 安装需要的 SDK 组件
sdkmanager "platforms;android-36" "build-tools;36.0.0" "platform-tools"

步骤 3:接受许可证

复制代码
sdkmanager --licenses

输入 y 接受所有许可证。


更简单的方法:使用 scoop 安装

这个我没用过

如果你安装了 scoop,可以一键安装:

复制代码
# 安装 android-sdk
scoop install android-sdk
​
# 安装需要的 SDK 版本
sdkmanager "platforms;android-36" "build-tools;36.0.0" "platform-tools"
​
# 接受许可证
sdkmanager --licenses

检查 Java 是否安装

另外,构建 Android 项目还需要 Java,自行查看是否已安装:

检查结果

需要看项目要求 Java 几。这里举例java 17

需要安装 Java xx版

你可以从以下途径下载:

  1. Oracle JDK 17https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html

  2. OpenJDK 17 (免费):https://adoptium.net/

  3. 使用 scoop(如果已安装):

复制代码
scoop install java17

安装后确保 JAVA_HOME 环境变量指向 Java 17。这里要在环境变量设置,不会问ai或者查"java设置环境变量"


总结:你需要安装的内容

组件 状态 说明
Gradle ✅ 已就绪 通过 Gradle Wrapper
Java ❌ 需要 Java 17 当前是 Java 11
Android SDK ❌ 未安装 需要 API 36

安装完 Java 17 和 Android SDK 后,基本环境就完成了,开始安装gradle,这是个安卓新的构建工具,以前老项目是用Maven,现在基本都用gradle

将 Wrapper 下载地址改为国内镜像

gradle/wrapper/gradle-wrapper.properties 中的分发地址改为:

复制代码
distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-8.14-bin.zip

修改后就可以用命令运行 .\gradlew.bat assembleDebug 打包了,速度很快。

运行gradlew相关的命令都会自动安装Gradle,会自动下载Gradle的zip,自动安装。

安装成功后可以用命令来看安装的版本,有的话就可以用打包命令了。但是这时候有个最麻烦的问题就是如果你的项目不在C盘,那就会报错,因为无法跨盘来打包。Gradle缓存默认在C盘,这时候必须用命令把Gradle的缓存放到和项目一个盘里。

set GRADLE_USER_HOME=D:.gradle gradlew assembleDebug 或者这个设置命令 $env:GRADLE_USER_HOME="G:\Project.gradle-user-home"

用了命令后最好在环境变量的系统变量里也设置上GRADLE_USER_HOME和它的位置,双重备份保险。

查看Gradle的位置echo %GRADLE_USER_HOME%

查看ANDROID_HOME和ANDROID_SDK_ROOT环境变量的地址

echo %ANDROID_HOME% echo %ANDROID_SDK_ROOT%

1. 查看项目所用Gradle版本

gradle -v(全局) 有时候不行,得用.\gradlew -v(局部) 想搞全局得在环境变量的Path搞 环境变量的Path 新增:%GRADLE_HOME%\bin

2. 停止所有Gradle守护进程(解决缓存异常、跨目录报错)

.\gradlew --stop

3. 全量清理项目构建缓存

.\gradlew clean --no-build-cache .\gradlew clean

清理顺带打包.\gradlew.bat clean :app:assembleDebug

4. 重新编译Debug

.\gradlew.bat assembleAppDebug --stacktrace .\gradlew.bat assembleAppDebug .\gradlew assembleAppDebug

5. 停止所有 Gradle 进程

taskkill /F /IM java.exe

这是gradle缓存被锁最后的终极绝招。

下面给两个打包的结果图,一个是错误没打包好,一个是正确打包成功。


打包失败会给你说哪块的文件里某行有问题,可以复制给ai,这个命令可以当做检测语法是否错误的命令。Task下面两个就是错误的文件

相关推荐
私人珍藏库5 小时前
[Android] PeakFinder AR v4.8.89 (山峰全景识别+增强现实山峰查看器)
android·人工智能·智能手机·ar·工具·软件
researcher-Jiang5 小时前
高性能计算之OpenMP——超算习堂学习1
android·java·学习
夜雪一千5 小时前
Python enumerate() 函数完整详解:遍历同时获取索引,告别手动计数
服务器·windows·python
alexhilton6 小时前
Kotlin DSL深度解析:从Gradle脚本到构建你自己的DSL
android·kotlin·android jetpack
烽火聊员6 小时前
查看Android Studio错误日志
android·ide·android studio
星空语12 小时前
音频001_Android+Linux车载/手机音频全链路分层架构图
android·linux·音视频
CyL_Cly12 小时前
解决官网下载慢!Android Studio 最新版网盘下载
android·ide·android studio
智塑未来12 小时前
鸿蒙系统对比安卓、iOS,核心优势是什么?
android·ios·harmonyos
AI刀刀12 小时前
豆包智能体对话导出后,如何构建长期归档与高效检索体系?
android·人工智能·word·excel·ai导出鸭
初雪云14 小时前
iOS 上架入门:证书、描述文件、IPA 上传到底是什么关系?
android·ios·自动化·产品经理·iphone