欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > Android >内容正文

Android

云炬Android开发笔记 5-3,4Restful请求的处理

发布时间:2025/3/15 Android 36 豆豆
生活随笔 收集整理的这篇文章主要介绍了 云炬Android开发笔记 5-3,4Restful请求的处理 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

2.Restful请求的处理-框架

【说明】首先要考虑网络请求的参数(url传入的值、文件、回调、及loder加载圈)

【说明】使用建造者模式,将建造者类和宿主类分开;

2.1【新建建造者类】

 

2.2【restClient类的参数的定义】

【restClient类的参数的定义】restClient类在每次Builder的时候会生成全新的实例,而里面的参数一次更改完毕,不允许二次更改;

 

 

2.3 【回调类】

【回调类】在网路请求之后,会存在网络请求之后的回调,比如:请求失败、请求异常、请求成功等;

[新建CallBack包,书写需要调用的接口]

 

 

2.4 完善RestClient

【完善com.flj.latte.net.RestClient】以Builder的形式构造出来了;

 

2.5 RestClientBuilder 对数据的设置

【说明】主要完成的数据的传递

 

 

 

2.6 RestClient的调用

 

2.7 RestClientBuilder的改进

 2.7.1【改进1】【mParams】参数每次都会构建,比较繁琐;

 

【优化1】

【优化方法2】

【client修改】

 

2.8 requset请求

【新建callBack类】新建类并实现实现接口, 复写方法;

【部分源码】com.flj.latte.net.callback.RequestCallbacks

1 package com.flj.latte.net.callback;2 3 import android.os.Handler;4 5 import com.flj.latte.app.ConfigKeys;6 import com.flj.latte.app.Latte;7 import com.flj.latte.net.RestCreator;8 import com.flj.latte.ui.loader.LatteLoader;9 import com.flj.latte.ui.loader.LoaderStyle; 10 11 import retrofit2.Call; 12 import retrofit2.Callback; 13 import retrofit2.Response; 18 19 public final class RequestCallbacks implements Callback<String> { 20 21 private final IRequest REQUEST; 22 private final ISuccess SUCCESS; 23 private final IFailure FAILURE; 24 private final IError ERROR; 25 private final LoaderStyle LOADER_STYLE; 26 private static final Handler HANDLER = Latte.getHandler(); 27 28 public RequestCallbacks(IRequest request, ISuccess success, IFailure failure, IError error, LoaderStyle style) { 29 this.REQUEST = request; 30 this.SUCCESS = success; 31 this.FAILURE = failure; 32 this.ERROR = error; 33 this.LOADER_STYLE = style; 34 } 35 36 @Override 37 public void onResponse(Call<String> call, Response<String> response) { 38 if (response.isSuccessful()) { 39 if (call.isExecuted()) { 40 if (SUCCESS != null) { 41 SUCCESS.onSuccess(response.body()); 42 } 43 } 44 } else { 45 if (ERROR != null) { 46 ERROR.onError(response.code(), response.message()); 47 } 48 } 49 50 onRequestFinish(); 51 } 52 53 @Override 54 public void onFailure(Call<String> call, Throwable t) { 55 if (FAILURE != null) { 56 FAILURE.onFailure(); 57 } 58 if (REQUEST != null) { 59 REQUEST.onRequestEnd(); 60 } 61 62 onRequestFinish(); 63 }

 【完善RestClient】 

 

 

2.9 使用方法

【测试】

【增加权限】

【测试】

【效果】通过get请求返回了数据

 

总结

以上是生活随笔为你收集整理的云炬Android开发笔记 5-3,4Restful请求的处理的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。