03 2019 档案
Android deeplink和AppLink原理
摘要:APP开发中经常会有这种需求:在浏览器或者短信中唤起APP,如果安装了就唤起,否则引导下载。对于Android而言,这里主要牵扯的技术就是deeplink,也可以简单看成scheme,Android一直是支持scheme的,但是由于Android的开源特性,不同手机厂商或者不同浏览器厂家处理的千奇百 阅读全文
posted @ 2019-03-28 10:26 mingfeng002 阅读(9773) 评论(0) 推荐(0)
Service启动流程
摘要:Service启动流程从整个宏观上来看,它的模型如下 startService启动流程时序图 Activity中使用的startService方法是定义在Context的抽象类中,它的真正实现者是ContextImpl,所以我们首先进入ContextImpl类 (1)ContextImpl.star 阅读全文
posted @ 2019-03-25 11:15 mingfeng002 阅读(807) 评论(0) 推荐(0)
Android可见APP的不可见任务栈(TaskRecord)销毁分析
摘要:Android依托Java型虚拟机,OOM是经常遇到的问题,那么在快达到OOM的时候,系统难道不能回收部分界面来达到缩减开支的目的码?在系统内存不足的情况下,可以通过AMS及LowMemoryKiller杀优先级低的进程,来回收进程资源。但是这点对于前台OOM问题并没有多大帮助,因为每个Androi 阅读全文
posted @ 2019-03-22 16:41 mingfeng002 阅读(1032) 评论(0) 推荐(0)
ActivityManagerService数据结构ProcessRecord(一)
摘要:Android系统中用于描述进程的数据结构是ProcessRecord对象,AMS便是管理进程的核心模块。四大组件 (Activity,Service, BroadcastReceiver, ContentProvider)定义在AndroidManifest.xml文件, 每一项都可以用属性and 阅读全文
posted @ 2019-03-21 20:47 mingfeng002 阅读(3122) 评论(0) 推荐(0)
ActivityManagerService数据结构Activity栈管理(二)
摘要:ActivityManagerService要管理四大组件,那四大组件就必须在AMS中有存在的形式,这里先从AMS 如何管理Activity 谈起; Activity在AMS 中存在的形式为ActivityRecord; AMS以Task的方式管理Activity,Task在AMS存在的形式为Tas 阅读全文
posted @ 2019-03-21 20:46 mingfeng002 阅读(2719) 评论(1) 推荐(2)
android window(三)ViewRootImpl
摘要:ViewRootImpl 是一很重要的类,类似 ApplicationThread 负责跟AmS通信一样,ViewRootImpl 的一个重要职责就是跟 WmS 通信,它通静态变量 sWindowSession(IWindowSession实例)与 WmS 进行通信。 ViewRootImpl实现了 阅读全文
posted @ 2019-03-02 15:38 mingfeng002 阅读(2099) 评论(0) 推荐(1)
Android SurfaceFlinger
摘要:Android 系统启动过程Activity 创建过程Activity 与 Window 与 View 之间的关系 Android 系统从按下开机键到桌面,从桌面点击 App 图标到 Activity 显示的过程。但是 Activity 是怎么显示在屏幕上的呢?下面我们就来讨论下这一过程。 Surf 阅读全文
posted @ 2019-03-01 18:54 mingfeng002 阅读(1567) 评论(0) 推荐(1)