学习Retrofit+RXJava

来源:互联网 发布:淘宝儿童电动车 编辑:程序博客网 时间:2024/06/05 14:41

导入依赖

compile 'com.squareup.retrofit2:retrofit:2.0.0-beta4'
     
compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta4'
   
compile 'com.squareup.retrofit2:adapter-rxjava:2.0.0-beta4'
   
compile 'io.reactivex:rxandroid:1.1.0'
   
compile 'io.reactivex:rxjava:1.1.0'
   
compile 'com.squareup.okhttp3:logging-interceptor:3.3.1'



创建一个接口,写入

 public interface ApiService {
    @GET()
    public Observable<MyBean> getRequest(@Url String str);


然后需要在activity文件中写入

 public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Retrofit retrofit = new Retrofit.Builder().addConverterFactory(GsonConverterFactory.create())
                .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
                .baseUrl("需要解析的地址").build();
        ApiService apiService = retrofit.create(ApiService.class);
        Observable<MyBean> request = apiService.getRequest("需要解析的地址");
        request.subscribeOn(Schedulers.io 

())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(new Subscriber<MyBean>() {
                    @Override
                    public void onCompleted() {

                    }

                    @Override
                    public void onError(Throwable e) {

                    }

                    @Override
                    public void onNext(MyBean myBean) {

                    }
                });
    }
}

原创粉丝点击