美文网首页我爱编程
as中统一管理版本号

as中统一管理版本号

作者: boyrt | 来源:发表于2018-04-13 14:52 被阅读0次

项目中module很多的时候,各module中build.gradle文件中的compileSdkVersion、buildToolsVersion及依赖库版本(如appcompat-v7)可能存在版本不一致的问题。
针对该问题,解决方案是:统一管理版本号

  1. config.gradle文件创建
  2. 版本号引用

1.config.gradle

在项目根目录下创建config.gradle文件,具体内容自定义:

ext{
    androidBuildToolsVersion = "26.0.2"
    androidMinSdkVersion = 16
    androidTargetSdkVersion = 26
    androidCompileSdkVersion = 26
    supportLibraryVersion = '26.+'


    // 设置是否使用混淆
    MINIFY_ENABLED = true
    MINIFY_DISABLED = false

    // Version of "com.android.support:appcompat-v7", refer it as folow:
    //  compile "com.android.support:appcompat-v7:${APPCOMPAT_VERSION}"
    APPCOMPAT_VERSION = '26.+'
    version = '1.5'
    android = [
            recyclerView: "com.android.support:recyclerview-v7:${supportLibraryVersion}",
            appcompat_v7: "com.android.support:appcompat-v7:${supportLibraryVersion}",
            support_v4  : "com.android.support:support-v4:${supportLibraryVersion}",
    ]

    view = [
            aaaaaa: "com.xxxxxx:aaaaaa:${version}",
    ]
}

当然,你也可以将config.gradle的内容直接写在项目根目录下的build.gradle文件中。

2.版本号引用

首先需要在根目录下的build.gradle文件中,添加对config.gradle文件的引用

apply from: 'config.gradle'

如果config.gradle的内容直接写在了build.gradle文件中,上面的引用步骤可以忽略。

添加引用后,就可以在module的build.gradle文件中引用设置的版本号。
关键代码:
rootProject.ext.***
$rootProject.APPCOMPAT_VERSION

android {
    compileSdkVersion rootProject.ext.androidCompileSdkVersion
    buildToolsVersion rootProject.ext.androidBuildToolsVersion
    defaultConfig {
        applicationId "com.***.myvideodemo"
        minSdkVersion rootProject.ext.androidMinSdkVersion
        targetSdkVersion rootProject.ext.androidTargetSdkVersion
        versionCode 1
        versionName "1.0"
    }    
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    ...
    compile "com.android.support:appcompat-v7:$rootProject.APPCOMPAT_VERSION"
    
}

说明一个坑:
compile "com.android.support:appcompat-v7:$rootProject.APPCOMPAT_VERSION"
compile后面必须使用双引号,如果使用单引号,编译报错

image.png

相关文章

  • cannot access android.support.v4

    Android Studio中统一管理版本号引用配置 版本冲突时,可以使用的两种解决方式: 方法一:将版本号引用进...

  • as中统一管理版本号

    项目中module很多的时候,各module中build.gradle文件中的compileSdkVersion、...

  • AS修改了gradle配置后apk does not exist

    我的APK版本号是在gradle.properties中统一配置的,编译生成的文件的名称也是由版本号命名的,出现以...

  • Android Studio中统一管理版本号引用配置

    方式一: 在gradle.properties中写入: #测试环境ENV_TEST=test#开发环境ENV_DE...

  • Git 17使用Tag标签 系统版本号管理

    GIt 系统版本号管理 ========= 命令 系统版本号管理 git tag [tag_name] + [co...

  • Maven 进阶

    一、Maven 版本管理 Maven 的推荐版本号约定为:主版本号.次版本号.增量版本号-<里程碑版本> 开发中的...

  • 关于 APP 版本号

    版本号的格式:v<主版本号>.<副版本号>.<发布号>版本号的初始值:v1.0.0管理规则:主版本号(Major ...

  • iOS发版本规则

    版本号的格式:v<主版本号>.<副版本号>.<发布号> 版本号的初始值:v1.0.0 管理规则: 主版本号(Maj...

  • IOS上架应用版本号升级命名规则

    仅供参考: 版本号的格式:v<主版本号>.<副版本号>.<发布号> 版本号的初始值:v1.0.0 管理规则: 主版...

  • NPM版本号

    版本号使用NPM下载和发布代码时都会接触到版本号。NPM使用语义版本号来管理代码,这里简单介绍一下。 语义版本号分...

网友评论

    本文标题:as中统一管理版本号

    本文链接:https://www.haomeiwen.com/subject/sprfkftx.html