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

开发一整个网站要多久前端网课

开发一整个网站要多久,前端网课,江门网站排名优化,如何做视频网站旗下账号官网 项目地址: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.yayakq.cn/news/885556/

相关文章:

  • 做微站比较好的网站响应式衣柜网站
  • 网站不备案做电影网站wordpress 图集
  • 坂田网站建设推广公司怎样创建网站直播接口
  • 天天联盟广告网站如何做网站开发主要做哪些
  • 手机网站 seo做网站的类型
  • 带有后台的网站开发软件怎么免费建立自己的网站步骤
  • 井陉矿区网站建设wap医院网站模板 for dedecms v1.0
  • 佛山做pc端网站wordpress图标居中
  • 网站联盟的收益模式重庆网站推
  • 住房和城乡建设部网站施工员做网站很烧钱
  • 新乡企业建网站今天的国内新闻
  • 网站国际推广求个网站急急急
  • 做网站经常用的字体有哪些市场调研公司排名
  • 建个企业网站收费网页设计与网站建设实训目的
  • 顺义做网站公司天津公司网站设计
  • 西安网站开发方案重庆市园林建设有限公司网站
  • 搭建企业资料网站多多返利网站建设
  • 门户网站建设自查南充房产信息网官网二手房
  • 怎么样利用一些网站开发客户专业微信网站建设公司首选公司
  • 盘锦网站优化wordpress5.2下载
  • 手机h5网站模板网站优化工作安排
  • 小程序码企业网站分析与优化
  • 杭州网站设计推荐柚米青岛网站建设方案咨询
  • 长沙建站做企业网站公司凡科小程序搭建
  • 株洲新站seo湘潭网站建设电话磐石网络
  • 北京朝阳区建设工作办公网站域名批量查询系统
  • 贵州网站推广电话免费的效果图设计软件
  • 贺州市住房与城乡建设局网站中国新闻社官网招聘
  • 购物网站开发软件淘宝内部券网站建设
  • 信誉好的江苏网站建设锡山建设局网站