- 博客(7)
- 收藏
- 关注
原创 进程间通信的经典实现探究
1. 概念 进程间通信( Inter-process communication, IPC )是指运行在不同进程中的若干线程间的数据交换。从定义中可以看到:IPC 中参与通信的进程既可以运行在同一台机器上,也允许他们存在于各自的设备环境中。若进程是跨机器运行的,则通常需要由网络连接在一起。实现方式多种多样。2. 简单实现方式原则上,任何跨进程的数据交换都可以...
2018-08-28 11:07:59
586
原创 深入分析 LayoutInflater
从一个实际例子开始通常在 Activity 的 onCreate 里,我们都会调用 setContentView 方法,看下此方法 /** * Set the activity content from a layout resource. The resource will be * inflated, adding all top-level views...
2018-08-11 19:47:59
208
原创 getSystemService 追根溯源(基于最新源码)
1. 引入实际例子首先,关于 LayoutInflater,通常我们在 ListView 的 getView 方法中经常会用到LayoutInflater.from(context).inflate(mLayoutId,null);看一下此方法的源码 /** * Obtains the LayoutInflater from the given contex...
2018-08-11 17:38:45
667
原创 Android 消息机制分析(基于最新源码)
1. ThreadLocal 简介ThreadLocal 是一个线程内部的数据存储类,通常它可以在指定的线程中存储数据。数据存储之后,只有在指定的线程中可以获取到存储的数据,对于其他线程来说则获取不到。 ...
2018-08-09 20:07:50
319
原创 从源码分析 Window 的内部机制
1. Window 的添加过程1.1 从源头开始添加一个小悬浮窗是需要通过 WindowManager 的 addView 实现的,而我们查阅官方文档发现 WindowManager 是一个接口 public interface WindowManager implements ViewManager 它的真正实现是 WindowManagerImpl ,其中有如...
2018-08-06 20:17:20
181
原创 Activity 的启动流程分析 (基于 Android 8.1 )
0. 前言Activity 组件的启动流程在 Android 8.0 版本以后得到了很大程度上的变更,很多类或方法已经废弃不用,本人参考最新源代码与指导书籍重新分析 Activity 启动流程,其中大都是自己的观点,如有错误,烦请不吝赐教。1. 启动调用作为android四大组件之一,同时也是唯一可被用户感知的部分, Activity 的作用和地位毋庸置疑,而实际开发中,我们要启动...
2018-08-04 16:03:51
2511
原创 如何正确申请SYSTEM_ALERT_WINDOW的权限
1.在清单中声明权限<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>这一步至关重要2.判定是否拥有权限//检查是否已经授予权限if (!Settings.canDrawOverlays(this)) { //若未授权则请求权限} 其中,Settings.can...
2018-08-03 13:07:14
31502
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅