当前位置: 首页 > news >正文

建筑培训网首页安全员网站seo视频教程

建筑培训网首页安全员,网站seo视频教程,网站备案在哪个部门,小型网站开发开题报告范文官网 项目地址:Github博客地址:网络请求,如斯优雅 OkHttp 另外对 OkHttp 原理感兴趣的同学推荐你看以下源码分析文章 OkHttp 精讲:拦截器执行原理OkHttp 精讲:RetryAndFollowUpInterceptorOkHttp 精讲:…
官网
  • 项目地址:Github
  • 博客地址:网络请求,如斯优雅
OkHttp

另外对 OkHttp 原理感兴趣的同学推荐你看以下源码分析文章

  • OkHttp 精讲:拦截器执行原理
  • OkHttp 精讲:RetryAndFollowUpInterceptor
  • OkHttp 精讲:BridgeInterceptor
  • OkHttp 精讲:CacheInterceptor
  • OkHttp 精讲:ConnectInterceptor
  • OkHttp 精讲:CallServerInterceptor
集成步骤
  • 如果你的项目 Gradle 配置是在 7.0 以下,需要在 build.gradle 文件中加入
allprojects {repositories {// JitPack 远程仓库:https://jitpack.iomaven { url 'https://jitpack.io' }}
}
  • 如果你的 Gradle 配置是 7.0 及以上,则需要在 settings.gradle 文件中加入
dependencyResolutionManagement {repositories {// JitPack 远程仓库:https://jitpack.iomaven { url 'https://jitpack.io' }}
}
  • 配置完远程仓库后,在项目 app 模块下的 build.gradle 文件中加入远程依赖
android {// 支持 JDK 1.8compileOptions {targetCompatibility JavaVersion.VERSION_1_8sourceCompatibility JavaVersion.VERSION_1_8}
}dependencies {// 网络请求框架:https://github.com/getActivity/EasyHttpimplementation 'com.github.getActivity:EasyHttp:12.2'// OkHttp 框架:https://github.com/square/okhttp// noinspection GradleDependencyimplementation 'com.squareup.okhttp3:okhttp:3.12.13'
}
  • 需要注意的是:由于使用了 Lifecycle 特性,目前框架只支持 AndroidX 的项目集成
生命周期自动管控介绍
  • 框架可以自动管控请求的生命周期,无需第三方调用者封装和适配,这块其实用到 Jetpack 中的一个 Lifecycle 特性,框架将网络请求和 LifecycleOwner 绑定在一起,当 LifecycleOwner 触发 destroy 时,框架会对绑定的网络请求进行 cancel 处理。相比较传统的写法,这种方式更加简单快捷,同时有 Lifecycle 特性的加持,灵活也会更高,因为我们完全不需要关心请求的主体是 Activity 还是 Fragment,又或者是其他类型的对象。
  • 但并不是完全没有缺点,因为 Lifecycle 特性是 AndroidX 包中的新特性,如果需要使用的话,当前项目必须基于 AndroidX 库开发的才可以集成。
  • 都说代码是最好的老师,具体实现的代码如下:
public final class HttpLifecycleManager implements LifecycleEventObserver {/*** 绑定组件的生命周期*/public static void register(LifecycleOwner lifecycleOwner) {lifecycleOwner.getLifecycle().addObserver(new HttpLifecycleManager());}@Overridepublic void onStateChanged(@NonNull LifecycleOwner source, @NonNull Lifecycle.Event event) {if (event != Lifecycle.Event.ON_DESTROY) {return;}// 移除监听source.getLifecycle().removeObserver(this);// 取消请求EasyHttp.cancel(source);}
}
极速下载功能介绍
  • 其实本质上面和极速秒传的原理是差不多的,只不过一个是上传,另一个是下载。而极速上传是将本地文件的 MD5 值和服务器上面的进行比对,如果服务器存在这个 MD5 值的文件,就将这份文件映射一份到这个用户的网盘上面,从而达到了极速秒传的效果。而极速下载也是同理,根据后台给的文件 MD5 值和本地文件进行对比,如果存在这个文件并且 MD5 值一致,证明这个文件和服务器上面的文件是一致的,那么就直接跳过下载,直接回调下载成功监听。
  • 极速秒传和极速下载两者相同的共同点就是,利用缓存来达到极速的效果,只不过一者通过的是服务器的缓存,另一者使用的是本地的缓存,这两者都有一个共同的特点,就是减少服务器的压力,节省用户的等待时间。
代码定位功能介绍
  • 框架会在日志打印中输出在网络请求的代码位置,这样开发者可以直接通过点击 Log 来定位是在哪个类哪行代码,这样可以极大提升我们排查问题的效率,特别是在请求一多且业务复杂的情况下,我相信没有一个人会拒绝这样的功能。
延迟发起请求功能介绍
  • 通常我们都有这样一种需求,就是我们希望发起网络请求,但是希望它不是及时,而是经过一定的延迟才去请求,EasyHttp 针对这种场景进行了考虑并封装,我们可以这样写来做到这种效果:
EasyHttp.post(this).api(new XxxApi()).delay(3000).request(new HttpCallbackProxy<HttpData<XxxBean>>(this) {@Overridepublic void onHttpSuccess(HttpData<XxxBean> result) {}});
  • 延迟请求功能不仅支持同步和异步请求,还支持下载请求延迟。
http://www.khdw.cn/news/16351.html

相关文章:

  • 贵阳网站建百度搜索网站优化
  • 公司做网站之前要准备什么软件百度官网认证多少钱一年
  • 怎样建立商贸网站苏州seo
  • 政府网站建设调查深圳网站设计小程序
  • 买空间哪个网站好西安seo服务公司
  • 德语网站建设注意事项seo工作前景如何
  • 重庆网站推广计划seo网站自动发布外链工具
  • 罗湖商城网站建设哪家公司靠谱邯郸seo优化公司
  • 灰色行业老域名做网站不收录千锋教育的真实性
  • 网站建设做网站费用好的营销网站设计公司
  • 微信网站建设公司淄博做网站的公司
  • 专门做外国的网站有哪些持续优化完善防控措施
  • 电商平台推广员是做什么的seo快速收录快速排名
  • 网站建设案例实录百度信息流代理
  • 成品网站整套源码seo入门基础教程
  • 电商设计工资搜索引擎优化人员优化
  • 标准营销型网站定做价格郑州seo代理外包
  • 网站设计书怎么写网站的搜索引擎
  • 网站公告设计关键词排名查询工具有什么作用?
  • 个性化网站定制网站seo站长工具
  • 利用网站制作网页线上宣传方式有哪些
  • 动态网站开发前台后天实训小结seo排名点击器曝光行者seo
  • 郑州高端网站建设怎么样河南百度推广电话
  • 无锡专业做网站公司小红书推广
  • 外贸建站哪家强外贸网站怎么做网站宣传文案范例
  • 海口做网站公司电商网店
  • 快站官方客户端下载优化快速排序
  • 网站制作的核心要点是什么国际新闻网站
  • 网站建设售后支持天津搜索引擎优化
  • 质监站网址德州网站建设优化