android源码
jianpan_zouni
android行业 小兵一枚
展开
-
Android输入系统
Android的用户输入系统获取用户按键(或模拟按键)输入,分发给特定的模块(Framework或应用程序)进行处理,它涉及到以下一些模块:Input Reader: 负责从硬件获取输入,转换成事件(Event), 并分发给Input Dispatcher.Input Dispatcher: 将Input Reader传送过来的Events 分发给合适的窗口,并监控ANR。Input Ma转载 2017-04-17 14:06:44 · 398 阅读 · 0 评论 -
Android Systrace
systrace 可以通过命令启动,或者使用eclipse, android studio 都有。systrace 工具你可以在sdk/platform-tools/ 找到, 或者在源码里位于 external/chromium-trace 下面一、systrace 使用方法你可以通过python systrace.py -h 来查看systrace 的使用帮助转载 2017-11-27 09:24:00 · 220 阅读 · 0 评论 -
Android framework:Activity
1.Activity和window/View之间关系直接从类组成来触发:Activity类中有成员变量mWindow :它用来描述一个应用程序窗口,其实是phonewindow。Window类有一个类型为Context的成员变量mContext,这个成员变量指向的是一个Activity对象,所以window中可以通过mContext访问activity的资源。Window类还有一个类型为W...原创 2019-03-06 16:44:35 · 140 阅读 · 0 评论 -
Android UID的分配、查看及相关知识
链接:https://www.jianshu.com/p/b33dd49f2ae6uid pid gid gids 的含义和作用 uid 的分配 查看应用UID 的几种方式 通过uid获取包名,通过包名获取uid下面所有涉及的示例代码都是基于 Android 8.1的。1. uid pid gid gids 的含义和作用uid: android中uid用于标识一个应用程序,u...转载 2019-03-07 09:38:44 · 1951 阅读 · 0 评论 -
ActivityStack、ActivityTask、ActivityRecord关系
看图就明白了,三者之间的包含关系,然后再看下面的dumpsys,三者关系如此清晰。ActivityStack是统帅回退栈,里面是多个ActivityTask,Task里面又是record,record就是activity的记录,可能一个activity有多个recordACTIVITY MANAGER ACTIVITIES (dumpsys activity activities)Dis...原创 2019-03-07 10:23:12 · 1005 阅读 · 0 评论 -
Android framework:watchdog
watchdog就是看门狗。以前实习公司的watchdog就是监视进程,如果进程挂了就重新启动进程。在Android中watchdog的原理也类似,通过向进程发送消息,判断返回值延迟时间,若超时,通知zogte自杀,后面init会重启zogte,所以重启的是android,不影响kernel,速度较快。盗个图:开始撸代码:1.启动在systemserver:final Wa...原创 2019-03-04 17:19:58 · 1338 阅读 · 0 评论 -
Android framework:Activity启动
Activity启动的过程: Step 1. 无论是通过Launcher来启动Activity,还是通过Activity内部调用startActivity接口来启动新的Activity,都通过Binder进程间通信进入到ActivityManagerService进程中,并且调用ActivityManagerService.startActivity接口; St...原创 2019-03-07 11:45:34 · 190 阅读 · 0 评论 -
Android framework:wms/ams/activity Token
启动一个Activity的时候,会为Activity创建Token,也就是ActivityRecord中的Token:startActivityLocked -> ActivityRecord r = new ActivityRecord(..); //生成ActivityRecord实例 ActivityRecord( ... app...原创 2019-03-07 14:45:36 · 317 阅读 · 0 评论 -
Android wms粗略介绍
Wms管理着所有的窗口,包括创建、删除和修改,以及将某个窗口设置为焦点窗口。一、窗口、Window和View的区别窗口由两部分构成,一部分是描述该窗口的类WindowState,另一部分是该窗口在屏幕上对应的界面Surface。window是一个类,其实现类是PhoneWindow类,Activity类实现Window.Callback接口,从而成了具有通用操作方式的窗口。View也...转载 2019-03-07 15:42:38 · 2645 阅读 · 0 评论