Gradle多渠道打包应用apk
来源:互联网 发布:保护隐私的软件 编辑:程序博客网 时间:2024/05/17 15:59
1.背景:
apk可能要求有多种配置要求,比如访问的ip不同,配置文件资源不同等,这就要求可以一次性打包多个apk,避免手动多次打包;
2.原理:
a.在app的build.gradle文件种配置:
android { .... sourceSets { //设置各个渠道的目录文件 main { jniLibs.srcDirs = ['libs'] } supion { java.srcDirs = ['src/supion', 'src/supion/java', 'src/supion/java/'] } hopeland { java.srcDirs = ['src/hopeland', 'src/hopeland/java', 'src/hopeland/java/'] } } productFlavors {//两个渠道 hopeland { } supion { } } //遍历productFlavors打包输出文件名 applicationVariants.all { variant -> variant.outputs.each { output -> def appName = 'Ioter' def oldFile = output.outputFile def buildName variant.productFlavors.each { product -> buildName = product.name } output.outputFile = new File( output.outputFile.parent + "/${variant.buildType.name}", appName + "-" + getDate() + "-" + "${variant.buildType.name}-${variant.versionName}-" + buildName + ".apk".toLowerCase()) } }}def getDate() { def date = new Date() def formattedDate = date.format('yyyyMMddHHmm') return formattedDate}
b.在代码目录下,创建各自渠道的文件目录(和main同级),
c.在各自渠道配置相同的文件DeviceUtil.java,在该文件种配置各自的资源。
注:在main目录种不能有DeviceUtil文件,原理是一个渠道中,main目录和渠道目录合并,如果相同就存在冲突了。
阅读全文
0 0
- Gradle多渠道打包应用apk
- gradle多渠道打包apk小贴士
- Gradle学习笔记(基础,打包,多渠道打包,adb安装apk
- Gradle多渠道打包
- Gradle多渠道打包
- eclipse+gradle多渠道打包
- 【Andorid】Gradle多渠道打包
- android Gradle多渠道打包
- eclipse多渠道打包(gradle)
- Gradle多渠道打包 (1)
- Gradle多渠道打包
- gradle多渠道打包
- Gradle多渠道打包
- Gradle 多渠道打包
- 使用gradle多渠道打包
- Gradle多渠道打包
- Gradle Android 多渠道打包
- 多渠道打包(Gradle配置)
- You are trying to load data from a www stream which had the following error,Unsupported protocol
- 计算并输出一个三位数的个位,十位,百位数之和
- js检查ie低版本浏览器,并跳转更新页面
- Uinty ScriptableObject的用法
- Mongodb索引
- Gradle多渠道打包应用apk
- P3-8x-08k40
- nginx: [emerg] "server" directive is not allowed here in /usr/local/nginx/conf/nginx.conf:45
- 为何栈的初始化为0XCC
- Android 时间戳变成自己想要的格式
- Calendar
- git切换分支
- 嵌入式之系统移植详解(linux)
- kafka客户端启动出错