retrofit rxjava android 封装 使用

简介:   本人使用 github 现成封装 modules  rxretrofitlibrary 一步步封装 移步 http://blog.csdn.net/wzgiceman/article/details/51939574 专栏 移步 http://blog.

 

本人使用 github 现成封装 modules  rxretrofitlibrary

一步步封装 移步 http://blog.csdn.net/wzgiceman/article/details/51939574

专栏 移步 http://blog.csdn.net/column/details/13297.html

该博主 三个 版本的 gitbub 成果:

https://github.com/wzgiceman/RxjavaRetrofitDemo-string-master

https://github.com/wzgiceman/RxjavaRetrofitDemo-master

https://github.com/wzgiceman/Rx-Retrofit

 

本人使用 RxjavaRetrofitDemo-string-master modules 

该 网络请求 包含 缓存功能,包含 重试功能

 

 

1.测试 http://www.iteye.com/blogs

public class IteyeBlogsApi extends BaseApi {

    public IteyeBlogsApi(){
        setBaseUrl("http://www.iteye.com/");
    }


    @Override
    public Observable getObservable(Retrofit retrofit) {
        IteyeGetBlogsService api= retrofit.create(IteyeGetBlogsService.class);
        return api.getAllBlogs();
    }
}

 

 

public interface IteyeGetBlogsService {


    @GET("blogs")
    Observable<String> getAllBlogs();

}

 

myApi = new IteyeBlogsApi();
manager = new HttpManager(this, this);
     case R.id.btn_rx_text_iteye:
                Log.i("baoyou","myApi ===== start");
                manager.doHttpDeal(myApi);
                break;

 

结果 测试



 

 

 

2.测试 一个 本地rest 服务

public interface LocalUserRestService {

    @GET("user/list")
    Observable<String> getAllUsers();
}

 

public class LocalUserRestApi  extends BaseApi {

    public LocalUserRestApi(){
        setBaseUrl("http://192.168.50.61:8081/rest/rest/");
    }


    @Override
    public Observable getObservable(Retrofit retrofit) {
        LocalUserRestService api= retrofit.create(LocalUserRestService.class);
        return api.getAllUsers();
    }
}

 

  Log.i("baoyou","userRestApi ===== new start");
        userRestApi = new LocalUserRestApi();
        Log.i("baoyou","userRestApi ===== new start");

 

 @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btn_rx_text_rest_user:
                Log.i("baoyou","userRestApi ===== start");

                manager.doHttpDeal(userRestApi);
                Log.i("baoyou","userRestApi ===== end");
                break;

 



 



 
 
 

 

 

 

 

 

 

 

 

 

 

 

捐助开发者

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(支持支付宝和微信捐助,加入it技术扣扣群),没钱捧个人场,谢谢各位。



 
 
 谢谢您的赞助,我会做的更好!

 

 

目录
相关文章
|
19天前
|
Android开发 Python
Python封装ADB获取Android设备wifi地址的方法
Python封装ADB获取Android设备wifi地址的方法
66 0
|
19天前
|
安全 API Android开发
Android网络和数据交互: 解释Retrofit库的作用。
Android网络和数据交互: 解释Retrofit库的作用。
43 0
|
8月前
|
Android开发
Android Http 请求封装及使用
Android Http 请求封装及使用
158 0
|
10月前
|
前端开发 Android开发 数据安全/隐私保护
安卓MVI架构真的来了?动手试着封装吧(一)上
安卓MVI架构真的来了?动手试着封装吧(一)
244 0
|
19天前
|
Android开发
Android 分享机顶盒项目的封装类《GridView》(二)(转)
Android 分享机顶盒项目的封装类《GridView》(二)(转)
19 2
|
17天前
|
达摩院 安全 Java
80 PM撸代码之Android【武侠讲封装、继承、多态】
80 PM撸代码之Android【武侠讲封装、继承、多态】
24 0
|
18天前
|
设计模式 缓存 Java
补齐Android技能树——从AGP构建过程到APK打包过程,安卓rxjava面试
补齐Android技能树——从AGP构建过程到APK打包过程,安卓rxjava面试
|
18天前
|
JSON Java API
Android 深入Http(5)从Retrofit源码来看Http,最新Android开发面试解答
Android 深入Http(5)从Retrofit源码来看Http,最新Android开发面试解答
|
19天前
|
XML Java Android开发
Android 分享机顶盒项目的封装类《GridView》(三)(转)
Android 分享机顶盒项目的封装类《GridView》(三)(转)
13 2
|
19天前
|
缓存 Java API
Android 应用中基于 Retrofit 的网络请求优化实践
【4月更文挑战第5天】 在移动开发领域,网络通信是实现数据交换与服务集成的关键环节。针对安卓平台,Retrofit 作为一种流行且强大的HTTP客户端库,提供了简洁高效的网络请求解决方案。本文将深入探讨在 Android 应用程序中使用 Retrofit 进行网络请求时的性能优化策略,涵盖异步处理、请求重试机制、线程池管理以及缓存策略等方面。通过这些优化手段,开发者可以显著提升应用的响应速度和用户体验,同时确保数据传输的可靠性和效率。
29 1