多线程Bug
2015-12-23 15:11
381 查看
项目需求需要在每个url后加上固定的参数
于是用到拦截器
使用过程中在联想手机上出现Bug 启动报错 而且偶尔才会有
一般遇到偶尔才会出现的bug 想到的肯定是多线程之间出了问题
这个时候debug是完全无用的 只能通过打log的方式
在出现问题的地方打印出每个的值,看看值每次都是否格式一致
最终 在出问题的方法上加上同步锁即可
来自为知笔记(Wiz)
于是用到拦截器
使用过程中在联想手机上出现Bug 启动报错 而且偶尔才会有
一般遇到偶尔才会出现的bug 想到的肯定是多线程之间出了问题
这个时候debug是完全无用的 只能通过打log的方式
在出现问题的地方打印出每个的值,看看值每次都是否格式一致
最终 在出问题的方法上加上同步锁即可
publicsynchronizedstaticBasicNameValuePair getValues(int i){ if(valuePairs==null){ valuePairs =newBasicNameValuePair[5]; valuePairs[0]=newBasicNameValuePair("channels",SPUtils.getInstance().getString("channel")); valuePairs[1]=newBasicNameValuePair("appVersion",AppUtil.getVersion(UIUtils.getContext())); valuePairs[2]=newBasicNameValuePair("deviceUUID",AppUtil.getUniqueIdentification(UIUtils.getContext())); valuePairs[3]=newBasicNameValuePair("deviceModel",AppUtil.getDeviceModel(UIUtils.getContext())); valuePairs[4]=newBasicNameValuePair("deviceVersion",AppUtil.getDeviceVersion(UIUtils.getContext())); } return valuePairs[i]; }
来自为知笔记(Wiz)
相关文章推荐
- Android studio 导入Eclipse项目 Vitamio播放器报错
- 第三方登录——百度为例
- UIWebview调试js等
- Android点击非编辑框区域键盘隐藏
- 第十一章------缓存机制
- [前端] js prototype简单理解
- 将SQLServer中的数据库导入到PowerDesigner
- 手机自动化测试:Appium源码分析之跟踪代码分析一3
- 程序包管理之编译安装
- 查看android系统日志缓冲区,在代码中获取日志
- iOS 开发-教大家如何使用github客户端上传自己的代码到github网站
- Active Directory 域服务 - 用户
- Backbone学习笔记
- 1223访问权限、继承关系、值类型和引用类型
- LA 4253 Archery 二分
- 你还需要除PHP之外的编程语言吗(2)
- 手机自动化测试:Appium源码分析之跟踪代码分析一 2
- 第十章 会话管理
- LeetCode 38:Count and Say
- Android编译系统参考手册