图片:

下面只是笼统的介绍,大家可以对比自己的想法,看看自己是不是有什么考虑不周的(如果是你实现这样一个框架的话)

1,Request的设计,我们在得到response之后,我们可能根据项目需求希望有不同形式的数据(例如string,bitmap,jsonObject),volley使用抽象编程,让我们可以继承Request实现自己对response的解析方式(意味着处理volley为我们提供的StringRequest类等,我们自定义request)

2,重试策略,网络请求可能因为网络原因失败(例如手机断网了),volley为我们提供了重试策略

3,终止请求,例如请求数据途中,我们希望终止该请求

4,request在队列中优先级的问题,例如我们有的请求比较紧迫,就应该排在队列的前面

5,重复请求的问题,利用有多个相同的request在队列之中,请求到其中一个,其他的可能就不必请求了,直接从缓存中取

6,异常的处理,例如io,403,402等授权错

7,地址重定向处理

8,网络问题的处理,例如我们断网了,volley使用了network这个类来处理这一类问题

9,使用HttpClient还是url.openConnection()去请求数据呢?

10,缓存的读取和存储,我们请求到网络数据以后,可以存入本地缓存

11,如何设置请求日志来记录请求信息,用于调试?

12,对于缓存写入和读取的效率优化

13,图片请求的处理

最新文章

  1. web Worker使js实现‘多线程’?
  2. [Cocos2D-x For WP8]Tile Map创建地图
  3. PowerDesigner生成SQL Server 2008脚本注释乱码的问题
  4. python通过win32api轻松获取控件的属性值
  5. nyoj-----127星际之门(一)
  6. [Introduction to programming in Java 笔记] 1.3.7 Converting to binary 十进制到二进制的转换
  7. libevent for qt网络模块
  8. Java日志管理
  9. 在线阅读PDF文件js插件——pdf.js
  10. selenium 环境搭建
  11. Spring MVC的文件上传
  12. HTMLTestRunner测试报告中文乱码问题解决
  13. 面试题:两种方法计算n!
  14. tp5学习
  15. bzoj1912 树形dp求直径(新写法),求直径的两端点
  16. 记录一则xtts测试遇到的诡异现象
  17. Python3 tkinter基础 Button command 单击按钮 在console中打印文本
  18. POJ 2583
  19. e830. 向JTabbedPane中加入一个卡片
  20. 微信小程序获取用户手机号

热门文章

  1. Thread.Sleep(1000) 、Task.Delay(1000).Wait() 区别
  2. spring中排除某个类
  3. Xml解析过程中遇到“” 1 字节的 UTF-8 序列的字节 1 无效“”问题---idea与eclipse同适用
  4. MySQL数据库-错误1166 - Incorrect column name 'xxx' 的解决方法
  5. sql中字符串连接
  6. redis系统和通用函数
  7. Android运行时权限开启问题
  8. 【angular5项目积累总结】优秀组件以及应用实例
  9. MYSQL DATE_FORMAT() 函数时间大小比较
  10. ComBox、listBox、checklistBox控件