【翻译】项目引入组件

项目引入组件

本系列其他翻译

  1. Android架构指南

架构组件可以从Google的Maven仓库获取。只需以下步骤:

添加Google Maven仓库

android studio项目默认配置中,是没有添加google maven仓库的。

所以先要添加该仓库,打开项目的build.gradle文件(注意,不是app module下那个),并且将以下高亮的代码加入,如下所示:

allprojects {
    repositories {
        jcenter()
        google()
    }
}

添加架构组件

打开app module下的build.gradle文件,在dependencies中按需添加组件,你可以添加全部,也可以只添加一部分。

注意:如果是基于Kotlin的应用,要确保使用kapt而不是annotationProcessor。所以,这时你也应该添加 kotlin-kapt插件

主要依赖

包括:Lifecycles, LiveData, ViewModel, Room, 和Paging

同时,也可以添加测试工具,用来测试LiveData以及 测试Room migrations.

dependencies {
    // ViewModel 和 LiveData
    implementation "android.arch.lifecycle:extensions:1.1.1"
    // 可选, 只包括 ViewModel
    implementation "android.arch.lifecycle:viewmodel:1.1.1"
    // 可选, 只包括 LiveData
    implementation "android.arch.lifecycle:livedata:1.1.1"

    annotationProcessor "android.arch.lifecycle:compiler:1.1.1"

    // Room (use 1.1.0-beta2 for latest beta)
    implementation "android.arch.persistence.room:runtime:1.0.0"
    annotationProcessor "android.arch.persistence.room:compiler:1.0.0"

    // Paging
    implementation "android.arch.paging:runtime:1.0.0-beta1"

    // LiveData的测试辅助工具
    testImplementation "android.arch.core:core-testing:1.1.1"

    //Room的测试辅助工具
    testImplementation "android.arch.persistence.room:testing:1.0.0"
}

Lifecycles 的 Java8支持

如果你的app使用Java8,我们推荐你使用下面这个库,而不是上面的android.arch.lifecycle:compiler.

dependencies {
    // Java8 support for Lifecycles
    implementation "android.arch.lifecycle:common-java8:1.1.1"
}

针对RxJava and ReactiveStreams 可选的依赖

针对 Room RxJava 和 LiveData ReactiveStreams的支持,可选

dependencies {
    // Room的RxJava支持 (use 1.1.0-beta2 for latest alpha)
    implementation "android.arch.persistence.room:rxjava2:1.0.0"

    // LiveData的 ReactiveStreams支持 
    implementation "android.arch.lifecycle:reactivestreams:1.1.1"

    //Paging的 RxJava 支持 
    implementation "android.arch.paging:rxjava2:1.0.0-alpha1"
}

针对Guava的可选依赖

为Guava的 OptionalListenableFuture 类型添加支持。他们可在Room @Dao查询中用到。

dependencies {
    // Room 的 Guava支持
    implementation "android.arch.persistence.room:guava:1.1.0-beta1"
}

只包含Lifecycles 的轻量级导入

dependencies {
    // 只有Lifecycles (不包含ViewModel和LiveData)
    implementation "android.arch.lifecycle:runtime:1.1.1"
    annotationProcessor "android.arch.lifecycle:compiler:1.1.1"
}

更多信息,见Add Build Dependencies.

你可能感兴趣的:(文档翻译)