zoukankan      html  css  js  c++  java
  • Volley的理解

    1. 简介:

    • 并发、效率、性能 高要求
    • Volley(齐射,迸发)
    • Volley是Google2013发布的Android平台上的网络通信库

    2. Volley特点:

    • 通信更快,更简单,更健壮
    • Get、Post网络请求及网络图像的高效率异步处理请求
    • 对网络请求进行排序优先级处理
    • 网络请求的缓存
    • 多级别取消请求(同时取消正在进行的多个网络请求)
    • 和Activity生命周期的联动(当Activity销毁的时候可以同时取消正在进行的网络请求操作,提高性能)

    3. 缺点:

    • 不适合上传和下载操作
      如果有上传和下载需求可以考虑其他的框架

    二、为什么使用Volley

    1. 功能上:

    • 高效的Get/Post方式的数据请求交互
    • 网络图片的加载和缓存

      2. 其他:

    • Volley是Google官方推出的针对Android的专用网络通讯库,优化的非常好,非常权威
    • 性能稳定,强劲

    三、Volley框架功能介绍

    1、Volley的get和post请求方式的使用

      • 是对Android原生Get和Post请求的简单二次封装和优化
      • 挑选合适的返回对象:(确定的类型效率更好)
        • StringRequest
        • JsonObjectRequest
        • JsonArrayRequest
      • 回调的使用:
        • 请求成功
        • 请求失败
        • 请求重试

          2、Volley的网络请求队列建立和取消队列请求

      • 使用Volley的时候首先要建立一个全局的请求队列,将建立的每一个网络请求加入到全局队列里面
      • 整个APP的请求都是通过整个队列来管理的,这样方便取消某个请求或取消所有请求

        3、Volley与Activity生命周期的联动

      • 网络请求的生命周期和Activity的生命周期是关联到一起的
      • 可以在Activity销毁的时候,同时关闭请求,防止在Activity销毁的时候在后台继续执行请求,导致内存溢出或用户体验不好
      • 关键点: 设置Tag标签,onStop()里执行取消请求

        4、Volley的简单的二次回调封装

      • 假如我们要在请求开始的时候弹出一个对话框,请求结束的时候隐藏对话框,尽兴一些数据的处理,就需要创建一个全局的二次回调封装,这样,我们在项目开发中就可以根据不同的需求进行定制,而且管理起来也非常的方便和灵活

        个人查找仅供参考!
  • 相关阅读:
    Vue demo
    netcore使用IOptions
    CS0656 缺少编译器要求的成员“Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create”
    vs删除空白行 注释
    RabbitMQ入门
    EF 大数据量批量处理
    常用链接字符串
    DEA使用git提交代码时,点了commit之后卡死在performing code analysis部分,或者performing code analysis结束后没有进入下一步操作。
    Ubuntu16.04安装MySQL5.7
    ubuntu16.04源码编译安装nginx1.14.2
  • 原文地址:https://www.cnblogs.com/ll-ouyang/p/6387474.html
Copyright © 2011-2022 走看看