- 博客(6)
- 收藏
- 关注
原创 Java 多线程编程-并发编程
Java 多线程编程-并发编程 对于初学者来说,多线程就是 new 一个 Thread(),然后设置一个 Runnable,调用 Thread.start()方法启动线程。可是这种方式可能存在以下问题 子线程不可控制,不可取消(可以自行设置标志位,结束run方法),不可返回结果 创建新的线程,并且启动线程,需要抢占资源,可能会超过线程数,同时空闲的线程,没有被重新利用。 为此,这里会介绍...
2018-03-04 15:57:33 735
原创 Android 内存优化最佳实践
Android 内存优化最佳实践 移动设备上,内存是兵家必争之地,内存,CPU,帧率,耗电量,是非常重要的用户体验性能,从根本上考虑,优化内存和CPU,帧率和耗电量一般都会得到一定程度的优化。 Bugly 在 2016 收集的崩溃数据如下(android 应用数据) 同比 2015 年, OOM 崩溃问题从 2% 上涨到了 6%,OOM问题,随着业务场景的复杂,问题越发严重。 JV...
2018-03-01 09:49:35 835
原创 Activity 专题- Activity 托管 Fragment 的生命周期解析
Activity 专题- Activity 如何托管 Fragment 的生命周期解析 或者你使用过 DialogFragment,DialogFragment 是一种特殊的 Fragment ,这里简单介绍下原理,其实就是 Fragment 里面封装了一个 Dialog, public class DialogFragment extends Fragment impleme...
2018-03-11 15:20:01 432
原创 Android View绘制(二)-绘制流程分发
Android View绘制(二)-绘制流程分发 Android View绘制(二)-绘制流程分发 从 addView() 说起 View.requestLayout() 方法 ViewRootImpl.requestLayout() 总结-android View 绘制流程 在上一篇文章,我们了解了 Android inflate 的流程,也就是布局文件 inflate...
2018-03-04 12:16:16 633
原创 Android View绘制(一)- LayoutInflater.inflate() 流程简要解析
Android View绘制- LayoutInflater.inflate() 流程简要解析 布局,作为 Android 中展示 UI 的最主要的元素,其实它是怎么通过布局文件转化为实际的 UI 的?这篇文章,就是对这一过程进行简要的解析,并且提出一些实际开发过程需要注意的问题。 阅读该文章你可以了解到 LayoutInfalter 的工作过程 布局优化的一些建议 Layout...
2018-03-03 15:33:18 1048
原创 Handler,Message,Looper,MessageQueue 解析 -Android 异步消息机制
Handler,Message,Looper,MessageQueue Android 异步消息机制 我们都知道,使用 Handler 能够在 UI 主线程和子线程之间进行通信,最简单的代码如下: public class BitmapActivity extends Activity implements Handler.Callback { private Handler ha...
2018-03-02 13:58:19 260
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人