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技术扣扣群),没钱捧个人场,谢谢各位。



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

 

 

目录
相关文章
|
8月前
|
Android开发 Python
Python封装ADB获取Android设备wifi地址的方法
Python封装ADB获取Android设备wifi地址的方法
176 0
|
8月前
|
安全 API Android开发
Android网络和数据交互: 解释Retrofit库的作用。
Android网络和数据交互: 解释Retrofit库的作用。
77 0
|
Android开发
Android Http 请求封装及使用
Android Http 请求封装及使用
255 0
|
6月前
|
Java 调度 Android开发
深入解析Android应用开发中的响应式编程与RxJava应用
在现代Android应用开发中,响应式编程及其核心框架RxJava正逐渐成为开发者的首选。本文将深入探讨响应式编程的基本概念、RxJava的核心特性以及如何在Android应用中利用RxJava提升代码的可读性和性能。 【7月更文挑战第7天】
52 1
|
3月前
|
缓存 数据处理 Android开发
在 Android 中使用 RxJava 更新 View
【10月更文挑战第20天】使用 RxJava 来更新 View 可以提供更优雅、更高效的解决方案。通过合理地运用操作符和订阅机制,我们能够轻松地处理异步数据并在主线程中进行 View 的更新。在实际应用中,需要根据具体情况进行灵活运用,并注意相关的注意事项和性能优化,以确保应用的稳定性和流畅性。可以通过不断的实践和探索,进一步掌握在 Android 中使用 RxJava 更新 View 的技巧和方法,为开发高质量的 Android 应用提供有力支持。
|
8月前
|
Android开发
Android 分享机顶盒项目的封装类《GridView》(二)(转)
Android 分享机顶盒项目的封装类《GridView》(二)(转)
54 2
|
5月前
|
Android开发 iOS开发
Android项目架构设计问题之将隐式跳转的逻辑进行抽象和封装如何解决
Android项目架构设计问题之将隐式跳转的逻辑进行抽象和封装如何解决
61 0
|
5月前
|
编解码 API 开发工具
Android平台轻量级RTSP服务模块二次封装版调用说明
本文介绍了Android平台上轻量级RTSP服务模块的二次封装实践,旨在简化开发流程,让开发者能更专注于业务逻辑。通过`LibPublisherWrapper`类提供的API,可在应用中轻松初始化RTSP服务、配置视频参数(如分辨率、编码类型)、启动与停止RTSP服务及流发布,并获取RTSP会话数量。此外,还展示了如何处理音频和视频数据的采集与推送。最后,文章提供了从启动服务到销毁资源的完整示例,帮助开发者快速集成实时流媒体功能。
|
8月前
|
设计模式 缓存 Java
补齐Android技能树——从AGP构建过程到APK打包过程,安卓rxjava面试
补齐Android技能树——从AGP构建过程到APK打包过程,安卓rxjava面试
|
8月前
|
JSON Java API
Android 深入Http(5)从Retrofit源码来看Http,最新Android开发面试解答
Android 深入Http(5)从Retrofit源码来看Http,最新Android开发面试解答