Android架构及实践技术培训
中国电子标准协会http://www.ways.org.cn
培训内容
第一天 |
第1个主题:架构:Service、ServiceManager和Binder交互关系揭秘(30分钟) 1 Binder的第一号服务是谁?为何要这样设计和实现? 2 如何编写Service 3 新的Service产生与ServiceManager和Binder交互流程 4 如何获取一个Service? 5 Binder的生产者与消费者模式剖析
第2个主题:匿名共享内存(60分钟) 1 匿名共享内存Ashmem(Anonymous Shared Memory)驱动程序源代码分析 2 Android系统匿名共享内存Ashmem(Anonymous Shared Memory)在进程间共享
第3个主题:源码:通过Binder、ServiceManager、BpBinder、BnBinder、AIDL贯通Android整个体系的架构核心(60分钟) 1. 源码剖析Service Manager是如何成为一个守护进程的? 2. 源码剖析Server和Client是如何获得Service Manager接口的? 3. 源码剖析Server是如何把自己的服务启动起来的?Service Manager在Server启动的过程中是如何为Server提供服务的? 4 源码剖析Service Manager是如何为Client提供服务的? 5. Android系统进程间通信Binder机制在应用程序框架层的Java接口源代码分析
第4个主题:同一个程序内部启动一个新的Activity(60分钟) 1.应用程序的MainActivity通过Binder进程间通信机制通知ActivityManagerService启动一个新的Activity; 2.ActivityManagerService通过Binder进程间通信机制通知MainActivity进入Paused状态; 3.ActivityManagerService通过Binder进程间通信机制通知MainActivity所在的ActivityThread启动新的Activity;
第5个主题:通过开辟一个新的进程来启动一个新的Activity(20分钟) 1.Launcher通过Binder进程间通信机制通知ActivityManagerService,它要启动一个Activity; 2.ActivityManagerService通过Binder进程间通信机制通知Launcher进入Paused状态; 3.ActivityManagerService创建一个新的进程,用来启动一个ActivityThread实例; 4.ActivityThread通过Binder进程间通信机制将一个ApplicationThread类型的Binder对象传递给ActivityManagerService,以便以后ActivityManagerService能够通过这个Binder对象和它进行通信; 第6个主题:BroadcastReceiver注册过程(60分钟) 1. 广播接收器receiver 2. 保存广播类型filter;
第7个主题:广播发送和接收(60分钟) 1 sendBroadcast与ActivityManagerService 2 ReceiverDispatcher 3消息循环系统
第8个主题:服务的启动(20分钟) 1 ActivityManagerService进程完成新进程的创建; 2获取要在新进程启动的服务的相关信息; 3启动服务
第9个主题:服务的绑定和并发多客户请求的原理(60分钟) 1 ActivityManagerService启动服务 2 onBind 3 ServiceConnection 4并发多客户请求
|
|
时间 |
【主办单位】中国电子标准协会 【协办单位】深圳市威硕企业管理咨询有限公司 內 容 |
备注 |
第二天 |
第10个主题:ContentProvider启动过程(20分钟) 1 ContentResolver与ApplicationContentResolver 2 注册过程
第11个主题:ContentProvider在不同的应用程序之间共享数据(60分钟) 1 CursorWindow 2 ContentProviderProxy 3 Parcel 4 Transport 第12个主题:ActivityManagerService的各种作用和原理(60分钟) 1 AMS的架构解析 2 AMS是怎么成为应用程序背后的控制者的 3 生命周期的管理 4 组件之间的交互
第13个主题:Dalvik VM运行机制(60分钟) 1. 创建Dalvik虚拟机实例; 2. 为主线程的设置JNI环境; 3. 注册了Android核心类的JNI方法; 4. Java与C/C++的相互沟通;
第14个主题:Android移植时的事件驱动机制(30分钟) 1 Android Service与Na tive Service是如何应对硬件阻塞的? 2 开辟新的子线程并不断的poll 3 Listener注册 4 Callback 5 Application Framework中的Handler、Message、Looper、MessageQueue、 6 事件驱动机制实例
第15个主题:Intent彻底剖析(30分钟) 1 Android intent设计原则 2 Android intent实现 3复杂度和灵活性之间平衡
第16个主题:WindowManagerService原理与核心架构解析(180分钟) 1 WindowManagerService和ActivityManagerService进行交互(30分钟) 2 WindowManagerService显示Activity组件的启动窗口(Starting Window)的过程分析(30分钟) 3 WindowManagerService切换Activity窗口(App Transition)的过程分析(30分钟) 4 WindowManagerService显示窗口动画(60分钟) 5 WindowManagerService与SurfaceFlinger的交互(30分钟) |
|
文章评论(0条评论)
登录后参与讨论