我想构建一个Android Studio应用(Gradle构建系统),但是我想通过命令行来实现。
我想构建一个Android Studio应用(Gradle构建系统),但是我想通过命令行来实现。
Answers:
Android Studio会在项目的根目录下自动创建Gradle包装器,这就是它调用Gradle的方式。包装器基本上是一个脚本,它调用实际的Gradle二进制文件,并允许您使Gradle保持最新状态,这使使用版本控制更加容易。要运行Gradle命令,您可以简单地使用gradlew
项目根目录(或gradlew.bat
Windows)中的脚本,后跟要运行的任务的名称。例如,要构建Android应用程序的调试版本,您可以./gradlew assembleDebug
从存储库的根目录运行。在默认项目设置中,可以在中找到生成的apk app/build/outputs/apk/app-debug.apk
。在* nix机器上find . -name '*.apk'
,如果不存在,您也可以运行它来查找它。
c:\path_to_my_app\gradlew.bat ./gradlew assemblyDebug
,它向我展示了正在下载services.gradle.org/distributions/gradle-2.10-all.zip。它被卡在那里。我想念什么?
./gradlew installArm7Debug
。其他任务很容易找到./gradlew tasks
./gradlew assembleDebug
和./gradlew installDebug
命令将其上传到Android设备。在AndroidStudio中,有一个控制台可以实时监视所有Android设备活动(例如,如果Android设备崩溃,则控制台会打印异常跟踪)。如何在终端上获得此监视工具?
尝试以下操作(仅适用于OS X):
brew install homebrew/versions/gradle110
gradle build
您可以gradle tasks
用来查看当前项目可用的所有任务。没有Android Studio
这里需要。
有两种使用Gradle构建设置构建应用程序的构建类型:一种用于调试应用程序-debug-一种用于构建最终的发行包-发行模式。
编辑build.gradle文件以在发布模式下构建项目:
android {
...
defaultConfig { ... }
signingConfigs {
release {
storeFile file("myreleasekey.keystore")
storePassword "password"
keyAlias "MyReleaseKey"
keyPassword "password"
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release
}
}}
完成了,祝你好运!
这是完整指南的尝试
要么
./gradlew
,或者gradlew.bat
在Windows上
chmod +x ./gradlew
可能是必要的从现在开始,gradle
无论您选择哪种方式,均指运行Gradle。相应地替换。
如果您手动安装了SDK
export ANDROID_HOME=<install location>
~/.profile
如果未自动完成,则可能需要将其放入接受许可证: yes | sdkmanager
sdkmanager
可以在 $ANDROID_HOME/tools/bin
sdkmanager
可能必须以root身份运行尝试跑步 gradle
chown -R user:group $ANDROID_HOME
chmod 777 -R $ANDROID_HOME
gradle tasks
列出所有可以运行的任务:app:[appname]
是所有任务的前缀,在构建时会在Gradle日志中看到
一些基本任务
gradle assemble
:构建您应用的所有变体
app/[appname]/build/outputs/apk/[debug/release]
gradle assembleDebug
或assembleRelease
:仅构建调试或发行版本gradle installDebug
或installRelease
构建并安装到连接的设备
adb devices
,检查您的设备已列出并且设备在旁边更改后自动构建和安装
这样避免了必须连续运行相同的命令
gradle -t --continue installDebug
-t
:aka --continuous
,更改文件后自动重新运行任务--continue
:出现错误后继续。防止发生错误时停止gradle -h
更多的帮助