首页 > 代码库 > RxJava + Retrofit

RxJava + Retrofit

一、添加依赖

 1     compile ‘io.reactivex:rxandroid:1.2.0‘
 2     compile ‘io.reactivex:rxjava:1.1.5‘
 3     compile ‘com.google.code.gson:gson:2.4‘
 4     compile ‘com.squareup.retrofit2:retrofit:2.0.2‘
 5     compile ‘com.squareup.retrofit2:converter-gson:2.0.2‘
 6     compile ‘com.squareup.retrofit2:converter-jackson:2.0.0‘
 7     compile ‘com.squareup.retrofit2:adapter-rxjava:2.0.2‘
 8     compile ‘com.squareup.okhttp3:okhttp:3.0.1‘
 9     compile ‘com.squareup.okhttp3:logging-interceptor:3.0.1‘
10     compile ‘com.squareup.okio:okio:1.6.0‘

二、添加依赖可能出现的错误以及解决

Error:Execution failed for task‘:retrofitdemo:transformResourcesWithMergeJava

解决方法:

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.2"

    packagingOptions {
        exclude ‘META-INF/NOTICE‘ 
        exclude ‘META-INF/LICENSE‘ 
        exclude ‘META-INF/notice‘
        exclude ‘META-INF/notice.txt‘
        exclude ‘META-INF/license‘
        exclude ‘META-INF/license.txt‘
    }
}

 

三、操作:

(1)延时操作

 1 private void timerOption() {
 2         Observable.timer(3000, TimeUnit.MILLISECONDS)
 3                 .subscribeOn(Schedulers.io())
 4                 .observeOn(AndroidSchedulers.mainThread())
 5                 .subscribe(new Action1<Long>() {
 6                     @Override
 7                     public void call(Long aLong) {
 8                         startActivity(new Intent(SplashActivity.this, NewsActivity.class));
 9                         overridePendingTransition(0, android.R.anim.fade_out);
10                         finish();
11                     }
12                 });
13     }

(2)具体使用:

给 Android 开发者的 RxJava 详解

RxJava + Retrofit