美文网首页Android开发Android开发经验谈Android开发
简单管理Android Studio中的Gradle依赖

简单管理Android Studio中的Gradle依赖

作者: tengxp | 来源:发表于2019-12-20 21:24 被阅读0次

    随着项目中module数量的增大,随之而来的就是build.gradle文件中的依赖管理越来越复杂。。。
    说了两句废话,下面直接说解决方法:

    1. 修改工程根目录下的build.gradle
    apply from: 'config.gradle'
    
    1. 具体module下的依赖添加方式,重点就是第一行
    // 重点在此
    implementation rootProject.ext.libs
    
    def testLibs = rootProject.ext.testLibs
    testImplementation testLibs[0]
    androidTestImplementation testLibs[1, 2] // list子集
    
    def otherLibs = rootProject.ext.otherLibs
    // Glide
    annotationProcessor otherLibs["glideCompiler"]
    
    1. 下面看一下的config.gradle书写方式
        android = [
                minSdkVersion    : 15,
                targetSdkVersion : 27,
                compileSdkVersion: 29,
                buildToolsVersion: '28.0.3'
        ]
    
        versions = [
                retrofit: '2.3.0',
                glide   : '4.10.0',
                junit   : '4.12'
        ]
    
        libs = [
                // AndroidX
                'androidx.appcompat:appcompat:1.0.0',
    
                'androidx.core:core-ktx:1.1.0',
                'androidx.annotation:annotation:1.1.0',
                "androidx.recyclerview:recyclerview:1.1.0",
    
                // Retrofit
                "com.squareup.retrofit2:retrofit:$versions.retrofit",
                "com.squareup.retrofit2:converter-gson:$versions.retrofit",
                'com.squareup.okhttp3:logging-interceptor:3.9.0',
                'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0',
    
                // Glide
                'com.github.bumptech.glide:glide:' + versions.glide,
                'com.github.bumptech.glide:okhttp3-integration:' + versions.glide,
                'jp.wasabeef:glide-transformations:2.0.1',
    
                // Kotlin
                "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
        ]
    
        testLibs = [
                "junit:junit:" + versions.junit,
    
                "androidx.test.ext:junit:1.1.1",
                "androidx.test:rules:1.2.0"
        ]
    
        otherLibs = [
                glideCompiler: 'com.github.bumptech.glide:compiler:' + versions.glide
        ]
    }
    

    总结

    Gradle依赖管理的目的就是下面两点:

    • 添加依赖简单
    • 方便进行统一的版本控制

    控制台提示的依赖添加方式:

    The following types/formats are supported:
      - Instances of Dependency.
      - String or CharSequence values, for example 'org.gradle:gradle-core:1.0'.
      - Maps, for example [group: 'org.gradle', name: 'gradle-core', version: '1.0'].
      - FileCollections, for example files('some.jar', 'someOther.jar').
      - Projects, for example project(':some:project:path').
      - ClassPathNotation, for example gradleApi().
    

    欢迎提出问题,一起讨论,更欢迎指出更好的依赖添加方式。

    参考

    1. Android Studio 中 Gradle 依赖的统一管理
    2. gradle使用技巧(def定义变量 rootProject.ext 添加全局变量)
    3. Kotlin之美——DSL篇
    4. Groovy List 常用操作

    相关文章

      网友评论

        本文标题:简单管理Android Studio中的Gradle依赖

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