杂记录

来源:互联网 发布:爱之光朱晓秋网络课程 编辑:程序博客网 时间:2024/05/19 12:18


项目用到的东西:

volley 网络框架(以前用Asych-task-http)

picasso 图片加载框架

recycleview 代替了ListView

SwipeRefreshLayout  代替了PullToRefresh 开源下拉刷新组件

butterknife 注解框架

信鸽推送,新浪微博分享,微信分享。

mvp 模式开发

从eclipse 迁移到android studio

---------------------------------------------

待写

---------------------------------------------

其他库

PhotoView放大缩小的图片处理库

jackson, json解析库

ZXing二维码识别库





网络框架随便记录

一:一个网络请求包含什么信息呢?
MyAndroidClient{

url     请求地址 String 
handler 请求处理器  Handler
Context 请求标记    Activity
param   请求协议数据  自定义
{
ID //协议id
requestdata //请求数据
responsedata //响应数据
packData(); //打包请求数据
unPackData();//解析返回数据
}

}




二:发送网络请求
//提交一个runnable对象表示一个网络任务,并返回一个future对象表示这个任务。
  听起来绕,实际上就是Future代表当前任务。

//Future request = threadPool.submit(new Runnable(new MyAndroidClient(xxx...)));

  Future<?> request = threadPool.submit(new AsyncHttpRequest(client, httpContext, uriRequest, responseHandler));

        if(context != null) {
            // 把这个网络任务记录在map中
            List<WeakReference<Future<?>>> requestList = requestMap.get(context);

            if(requestList == null) {
                requestList = new LinkedList<WeakReference<Future<?>>>();
                requestMap.put(context, requestList);
            }

            requestList.add(new WeakReference<Future<?>>(request));
        }


三:
 集合里面存放弱引用 ,这种思想 要学习一下,以后可能有其他应用场景。

 requestList.add(new WeakReference<Future<?>>(request));



0 0
原创粉丝点击