配置Gradle环境变量
如何配置Gradle环境变量,请参考我的另一篇博客:
Mac下配置Gradle环境变量
Windows用户配置Gradle环境变量应该也差不多,在这里就不介绍了
如果电脑上不单独配置Gradle环境也没关系,因为Android Studio使用了Gradle Wrapper,它可以在没有配置Gradle环境变量的情况下构建项目
Gradle Wrapper
Gradle Wrapper是什么?
可以理解为对Gradle的一层封装,使用它可以在没有安装Gradle的系统上使用Gradle来构建项目如何做到的?
Gradle Wrapper通过两个脚本文件实现这一功能,一个是用于windows的批处理文件gradlew.bat,一个是用于Linux和Uninx的Shell脚本文件gradlew.
使用Android Studio创建的项目默认为我们生成了Gradle Wrapper的文件结构.
在gradle/wrapper目录下有两个文件: gradle-wrapper.jar和gradle-wrapper.properties
gralde-wrapper.properties文件中声明了gradle的版本和下载地址.
|
|
在第一次使用gradlew进行项目构建的时候,Gradle Wrapper会自动下载gralde-wrapper.properties指定的gradle版本.
初始化构建环境
在第一次使用gradlew进行项目构建的时候,会对构建环境进行初始化,会把Gradle的安装包、插件和相关依赖下载下来.
在Terminal中输入命令,如下:
./gradlew clean
首次执行命令行会先去下载gradle安装包,过程可能会非常慢(耐心等待。。还是可以下载下来的)
如果实在太慢,可以设置代理去翻墙
常用Gradle任务
1.查看gradle版本
./gradlew -v
2.编译并打出Debug版本的包.
./gradlew assembleDebug
3.编译并打出Release版本的包.
./gradlew assembleRelease
4.执行检查并编译打包,打出所有Release和Debug的包.
./gradlew build
5.删除build目录,会把app下面的build目录删掉
./gradlew clean
6.编译打包并安装Debug版本的包
./gradlew installDebug
7.卸载Debug版本的包
./gradlew uninstallDebug
8.使用-info查看任务详情
./gradlew uninstallDebug -info
Gradle多渠道打包
在AndroidMainfest.xml配置相应的渠道
|
|
在build.gradle中配置渠道信息和自动替换脚本
|
|
默认配置
所有渠道默认使用这一配置,如果渠道有特殊需求,可以在productFlavors对应的渠道号中单独配置.
|
|
打包后自动修改apk的名字
release包的命名格式为:产品名版本号渠道名.apk
debug包的命名格式为:产品名_版本号-debug.apk
|
|
我的build.gradle的完整文件
|
|
命令行打包
本文是以小米市场、华为市场、应用宝市场、豌豆荚市场为例
- 打出debug包
./gradlew assembleDebug
- 打出所有渠道的Release包
./gradlew assembleRelease
- 打出小米市场的Release包
- 同理,如果要打出华为市场的Release包
./gradlew assembleHuaweiRelease
- 同时打出豌豆荚市场的debug包和Release包
./gradlew assembleWandoujia
Gradle多渠道打包出现的问题
如果在打包过程中出现问题,请参考我的另外两篇博客,有可能也是您遇到的问题:
Gradle打包:Keystore not found for signing config
Could not get unknown property ‘mysigns’ for SigningConfig container.