//导入依赖
//Mainactivity类compile 'com.squareup.retrofit2:retrofit:2.0.1' compile 'com.squareup.retrofit2:converter-gson:2.0.1' compile 'com.squareup.retrofit2:adapter-rxjava:2.0.1' compile 'io.reactivex:rxandroid:1.1.0' compile 'com.squareup.okhttp3:logging-interceptor:3.4.1'
//创建Apiservice接口类package android_rxjava.baway.com.retrofitandrxjava; import retrofit2.http.GET; import rx.Observable; /** * Created by C-PC on 2017/11/5. */ public interface ApiService { /** * 结合Retrofit+RxJava * http://service.meiyinkeqiu.com/service/ads/cptj * @param * @return */ @GET("ads/cptj") Observable<News> getNoParams(); }
package android_rxjava.baway.com.retrofitandrxjava; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import java.util.List; import retrofit2.Retrofit; import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory; import retrofit2.converter.gson.GsonConverterFactory; import rx.Observable; import rx.Observer; import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getNoParams(); } private void getNoParams() { Retrofit retrofit = new Retrofit.Builder().baseUrl(Api.BASE_PATH).addConverterFactory(GsonConverterFactory.create()) .addCallAdapterFactory(RxJavaCallAdapterFactory.create()) .build(); ApiService apiService = retrofit.create(ApiService.class); Observable<News> observable = apiService.getNoParams();//生产事件 //被观察者订阅观察 默认在同一个线程 observable.subscribeOn(Schedulers.io())//指定IO做耗时操作 .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Observer<News>() { @Override public void onCompleted() {//完成 } @Override public void onError(Throwable e) {//失败 // Log.i("xxx", e.getMessage()); } @Override public void onNext(News news) {//消费事件 List<News.AdsBean> ads = news.getAds(); for (int i = 0; i < ads.size(); i++) { News.AdsBean adsBean = ads.get(i); String gonggaoren = adsBean.getGonggaoren(); Log.i("xxx", gonggaoren); } } }); } ; }
//bean类
package android_rxjava.baway.com.retrofitandrxjava; import java.util.List; /** * 1. 类的用途 * 2. @author forever * 3. @date 2017/11/2 13:29 */ public class News { private List<AdsBean> ads; private List<List<String>> dropdown; public List<AdsBean> getAds() { return ads; } public void setAds(List<AdsBean> ads) { this.ads = ads; } public List<List<String>> getDropdown() { return dropdown; } public void setDropdown(List<List<String>> dropdown) { this.dropdown = dropdown; } public static class AdsBean { /** * id : 126 * imgsrc : https://service.meiyinkeqiu.com/upload/back/ads/1127f70b-f163-4a25-886b-9fb057e30c77.png * url : https://service.meiyinkeqiu.com/service/infomation.html?id=676https://service.meiyinkeqiu.com/service/infomation.html?id=676https://service.meiyinkeqiu.com/service/infomation.html?id=676 * type : cptj * adsorder : 1 * typecn : null * gonggaoren : 黑龙江风骨科技有限公司 * timelength : 30 * state : 1 * ptime : 2017-10-28 18:26:51 * lianjietype : 内部 * docid : 676 * menuurl : hyzx * infotype : 1 */ private int id; private String imgsrc; private String url; private String type; private int adsorder; private Object typecn; private String gonggaoren; private int timelength; private int state; private String ptime; private String lianjietype; private String docid; private String menuurl; private String infotype; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getImgsrc() { return imgsrc; } public void setImgsrc(String imgsrc) { this.imgsrc = imgsrc; } public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } public String getType() { return type; } public void setType(String type) { this.type = type; } public int getAdsorder() { return adsorder; } public void setAdsorder(int adsorder) { this.adsorder = adsorder; } public Object getTypecn() { return typecn; } public void setTypecn(Object typecn) { this.typecn = typecn; } public String getGonggaoren() { return gonggaoren; } public void setGonggaoren(String gonggaoren) { this.gonggaoren = gonggaoren; } public int getTimelength() { return timelength; } public void setTimelength(int timelength) { this.timelength = timelength; } public int getState() { return state; } public void setState(int state) { this.state = state; } public String getPtime() { return ptime; } public void setPtime(String ptime) { this.ptime = ptime; } public String getLianjietype() { return lianjietype; } public void setLianjietype(String lianjietype) { this.lianjietype = lianjietype; } public String getDocid() { return docid; } public void setDocid(String docid) { this.docid = docid; } public String getMenuurl() { return menuurl; } public void setMenuurl(String menuurl) { this.menuurl = menuurl; } public String getInfotype() { return infotype; } public void setInfotype(String infotype) { this.infotype = infotype; } } }//Api类
package android_rxjava.baway.com.retrofitandrxjava; /** * Created by C-PC on 2017/11/5. */ public class Api { public static final String BASE_PATH = "http://service.meiyinkeqiu.com/service/"; public static final String BASE_URL = "https://api.github.com/"; }
976

被折叠的 条评论
为什么被折叠?



