Android

关于Andorid内存泄漏

OOM问题会经常困扰我们,尤其是维护一个用户数量基数大的app的时候,我们的bug统计数据前几位,基本上会被OOM问题给占据。通过结果反向分析问题,和在写代码的时候注意内存泄漏从而避免OOM,本质上都需要对内存泄漏的产生,以及几种常见的方式需要有着清晰的认识。

多渠道打包

新上的项目,需要发布12个渠道,小米,魅族,华为等等。就涉及到多渠道打包问题。小结一下。

关于Andorid混淆

新公司的驾考类产品稳定运行了好几年,最近接手的时候发现居然没有进行混淆处理。这无异于在大马路上裸奔。反编译之后,分分钟拿到你的所有源码。

马上将这一情况报告给leader,leader是搞ios出身的。同意了。原本以为一天就搞完了,后来的经历告诉我,还是太年轻了。

接着我才理解这个项目的前辈们不搞混淆的原因,这是一条漫漫长坑。

其实混淆本身不难,难的是一个项目历尽几手,尾大不掉。很多意外的坑。

2018三月面试经历

金三银四。求职的好机会。第一个需求发展,第二个看看市面上需要什么样的人才,找准自己的定位。坐标南京。面试了努比亚,苏宁,焦点科技,地平线机器人。

Gradle从2.1升级到3.3具体的一些坑

最近维护原有的老项目的时候,发现gradle版本居然是2.1版本,难怪我说编译需要花费5分钟!!!尤其是现在的gradle稳定版本已经4.1+的情况下,显得更慢。

本着时间就是金钱的理念,开启了我的升级填坑之旅!、

Android热更新

项目场景:

  • 紧急发现了一个bug,影响用户体验,阻断项目流程。这个时候,只能紧急发布一个强制更新的新版本,让用户升级。
  • 最近百团大战开始。需要增加一个活动弹窗入口,越快越好。这个时候,只能紧急发布一个强制更新的新版本,让用户升级。

存在需求:

可不可以不让用户重新安装就可以解决上述场景?

TextView开发小细节

TexitView 在开发中是一个非常常见的控件,但是在限制字符串行数的时候,存在两个属性都可以控制单行。为啥google采用两种实现方式呢?

Android 触摸机制

android开发,涉及到自定义view的时机会非常的多,完成一个非常优质的view,view必须和用户又一个非常良好的交互。view的事件处理就是一个很重要的环节。

本文是对view有一定基础的总结。

浅谈Android ANR

使用android手机的时候,有时候会出现卡屏,无法动弹的情况。本文就简单的说明一下程序无响应的问题。

Android 如何根据XML文件读取drawable资源

问题提出的背景:自己在做launcher的新功能,摇一摇切换壁纸的时候。需要动态获取壁纸的id,然后填充到布局上。这样在后期维护的时候,就不需要过多的改动代码,直接增减图片,以及在配置文件(wallpapers.xml)中修改就好了。

ViewHolder 小结

adapter用的很多,android 5.0之后,采用recycleview来取代之前的listview。其中最大的一点就是让大家习惯于用viewholder.自己小结一下viewHolder的好处。

根据android对view的绘制原理,我们可以看到每一次对画布中view的寻找,是自上而下的,所以每一次findviewbyId的消耗非常大。