我要吃猪头

我要吃猪头 查看完整档案

杭州编辑  |  填写毕业院校  |  填写所在公司/组织填写个人主网站
编辑

我就爱吃猪头

个人动态

我要吃猪头 发布了文章 · 2017-08-29

android开发中需要注意的编码问题

日常开发中遇到的问题

  • 函数连调要注意:

    • Interger.parseInt(map.get(key).toString()):如果map返回为null或者“”(空字符串)或者非数字字符串,会直接导致app崩溃
  • 为了一个界面,不要使用activity内嵌套fragment,直接使用activity
  • SP工具类需要调整
  • 不用的代码,要求及时删除
  • 升级测试需要加强,用户从上一个版本升级到新版本,存储在sp内值类型变化,很有可能导致crash
  • 返回null的考虑,list的话,可以考虑Collections.emptyList()
查看原文

赞 0 收藏 0 评论 0

我要吃猪头 发布了文章 · 2017-07-26

心目中Android团队应该保留的习惯

  • 周报:

    • 写给自己看的周报,不用像写给领导看那样,关键是对自己负责

    • 查看过去一段时间,自己做了什么;对比当下,自己正在做什么;反思自己的技术

  • 定期的code review:

    • 每周一次的code review(暂时性,等团队的整体水平提高了,互相review)

  • 每周一问:

    • 每周出一道技术题,大家来解决

    • 每个人上台讲自己的解决方案

  • 技术规范与沉淀:

    • 形成自己团队的代码规范

    • 慢慢记录团队的沉淀,哪怕是一点也行,积少成多

  • 对新技术的态度:

    • 每天坚持对新技术的关注

    • 项目中引入新技术

    • 对新技术进行拆轮子

查看原文

赞 0 收藏 0 评论 0

我要吃猪头 发布了文章 · 2017-07-26

心目中的团队

团队的特点:

  • 扎实的基础能力

  • 快速掌握新技术的能力,并具备落地的能力

  • 发现问题,分析问题,解决问题的能力

  • 对自己的技术,有足够的自信

代码的基本功:

  • 良好的代码习惯

  • 初步的设计能力

  • 阅读某个框架的源码,并有深入理解(最好有魔改的经历)

  • 独立设计,实现SDK的经历与能力

  • 技术视野,不能局限于Android,需要掌握一些服务端的知识面

团队要做的事情:

  • 熟练运用开发的工具链

  • 模块化,功能化的设计SDK,深入理解分层的理念

  • 数据反馈,让反馈量化,来监督我们自己写的代码

  • 增强团队的主动意识,主动去做,去推动一些事情

  • 成员不单单会写代码,要有产品的意识,热爱自己的作品

技术方面的探索:

  • kotlin的使用

  • React Native的使用

  • Weex的使用

  • Cpp的编写

  • gradle的熟练使用

  • 插件化

查看原文

赞 0 收藏 0 评论 0

我要吃猪头 发布了文章 · 2017-06-26

好玩的开源项目

赞 0 收藏 0 评论 0

我要吃猪头 发布了文章 · 2017-06-13

某版本项目延期总结

某版本延期总结

问题:

技术方面:

  • OOM:风控SDK的lifelistener,导致持有activity,内存无法释放

  • 多次操作下单流程,程序崩溃:线程管理混乱,导致线程不断创建,内存OOM(具体的原因没有定位到,只是看到的表象)

  • 并发的读写文件:多线程的文件读写,引发出来的流问题

暴露出来的问题:

  • SDK的测试验证过程与业务开发不同,而且影响面更大(原先的业务测试流程无法适用),隐蔽性更大

  • 没有紧跟bugly,没有及时发现问题

  • 没有关注app的性能与内存

  • try,catch并没有及时暴露出问题

  • 代码方案,需要审核

  • 未删除不用的资源与代码

需要做的事情:

  • 排查所有出现线上crash的代码

  • SDK测试监控,流程更完善

  • B,C端的app性能监控,优化

学到的东西:

  • 开发,测试流程必须规范

  • activitylifelistener的慎重使用,建议使用弱引用

  • 并发文件的读写

  • 需要及时的反馈(反馈的重要性)

  • 第三方的框架使用更理性

  • JVM的知识需要深入

  • 线程的知识需要深入

  • 性能优化的知识需要深入

SDK发布流程:

阶段一--开发自测:

  • 关注代码功能的跑通

  • 关注exception的问题

阶段二--业务方引入:

  • 日志记录

  • 关注SDK的引入,有没有引出新的exception

  • 是否引起了crash

  • 是否引起了内存泄漏,OOM

  • 线程数的泛滥

  • 是否引起了app的卡顿

  • 此阶段的SDK为SNAPSHOT版本,这个阶段的代码不做try,catch,尽可能得让他崩溃,且SDK的catch(有些代码必须防止try cache的,比如文件读写)的excepton,上传到bugly

阶段三--上线:

  • 发布前,改用正式版本

  • 此阶段的SDK为release版本,会做try catch处理,同时移除exception的bugly的上传

  • 关注线上的crash

查看原文

赞 0 收藏 0 评论 0

我要吃猪头 分享了头条 · 2017-06-13

某版本延期总结 问题: 技术方面: OOM:风控SDK的lifelistener,导致持有activity,内存无法释放 多次操作下单流程,程序崩溃:线程管理混乱,导致线程不断创建,内存OOM(具体的原因没有定位到,只是看到的表象) 并发的读写文件:多线程的文件读写,引发出来的流...

赞 0 收藏 0 评论 0

我要吃猪头 回答了问题 · 2017-06-09

安全登陆怎么生成token?

使用cookie,数据脱敏;每次http的response返回时,服务端带回来cookie,本地的网络库做好cookie的操作;跟浏览器里的cookie表现一致就好;由服务端控制,这样的话,客户端就相对安全;在cookie里,服务端可以带回token,这个token的生命周期可以由服务端控制,比如:服务端认为token的有效期为2小时,2小时候,它重新分配一个token就好

关注 3 回答 6

我要吃猪头 回答了问题 · 2017-06-09

解决线上Android APP报错stackoverflowerror

创建了很多线程,但这些线程执行完代码后并没有被销毁,应该处于wait状态,然后又不断的创建线程,超过栈内存的阈值,然后就抛出这个错误了;查看一下,是不是当时有很多线程处于wait状态,bugly能看到的

关注 5 回答 4

我要吃猪头 回答了问题 · 2017-06-09

Android中静态变量被回收后值会变成什么?

static变量的生命周期跟程序一致,怎么可能会被回收

关注 8 回答 8

我要吃猪头 回答了问题 · 2017-06-09

关于HttpURLConnection GET请求 不知缘由的报错

把花瓶的截图放上来,给出的信息太少;另外,推荐使用okhttp或者retrofit;你的代码请求,封装性有点差

关注 3 回答 3

认证与成就

  • 获得 7 次点赞
  • 获得 5 枚徽章 获得 0 枚金徽章, 获得 1 枚银徽章, 获得 4 枚铜徽章

擅长技能
编辑

(゚∀゚ )
暂时没有

开源项目 & 著作
编辑

(゚∀゚ )
暂时没有

注册于 2016-06-30
个人主页被 2k 人浏览