当前位置:网站首页>Start process of activity
Start process of activity
2022-07-23 15:07:00 【ErwinNakajima】
1、 root Activity Startup process .
(1) Click on the desktop APP Icon ,Launcher The process uses Binder IPC The way to system_server Process AMS(ActivityManagerService) launch startActivity Request .
(2)system_server After the process receives the request , use Socket IPC towards Zygote Process issue create APP Process request ;
Zygote process fork A new process , namely APP process ;
(3)APP Process passing Binder IPC towards system_server Process initiation attachApplication request ;
system_server After the process receives the request , After a series of preparations , Re pass Binder IPC towards APP Process send scheduleLaunchActivity Request
(4)APP After the process receives the request , adopt Handler Send... To the main thread LAUNCH_ACTIVITY news , Create goals Activity, Get into Activity Life cycle of
ActivityManagerProxy yes AMS Remote interface for ,ApplicationThreadProxy yes ApplicationThread Remote interface for .
2、 Start in process Activity.
Ordinary Activity The startup process involves several processes ?AMS In the process (system_server) and APP process
APP Process passing Binder IPC towards system_server Process initiated request
system_server After receiving the request , Make a series of preparations ( analysis Activity, Processing startup parameters ), Re pass Binder IPC towards APP Process send message
APP After the process receives the request , Create goals Activity, Get into Activity Life cycle of .

If in doubt , Please contact the qq1164688204.
recommend Android Open source project
Project function introduction :RxJava2 and Retrofit2 project , Add automatic management token function , add to RxJava2 Life cycle management , Use App Architecture design is MVP Patterns and MVVM Pattern , Use componentization at the same time , Part of the code uses Kotlin, This project is under continuous maintenance .
Project address :https://gitee.com/urasaki/RxJava2AndRetrofit2
边栏推荐
- 直播课堂系统03-model类及实体
- js拖拽元素
- 真人踩过的坑,告诉你避免自动化测试常犯的10个错误
- Advanced operation and maintenance 03
- Supervisor installation and use
- Multiple backpacks!
- [turn] functional area division based on poi ()
- 解决kotlin写Android项目编译报Execution failed for task ‘:app:kaptDebugKotlin‘.异常
- 【解决异常】Flink上传jar包至集群环境运行报未序列化异常
- [software testing] how to sort out your testing business
猜你喜欢

基于simulink的双闭环矢量控制的电压型PWM整流器仿真

Kettle實現共享數據庫連接及插入更新組件實例

numpy和pytorch的版本对应关系

Linux: analysis of the basic use of vim editor

Leetcode-227-basic calculator||

Subsequence --- edit distance

Detailed tutorial of typora drawing bed configuration

Byte stream & character stream of IO stream

Transferred from Yuxi information disclosure: products such as mRNA covid-19 vaccine and Jiuzhou horse tetanus immunoglobulin are expected to be on the market within this year.

他山之石 | 阿里多模态知识图谱探索与实践
随机推荐
Subsequence --- edit distance
Simulation de modulation et de démodulation du signal CBOC basée sur MATLAB, sortie de corrélation, spectre de puissance et suivi de décalage de fréquence
初识C语言函数
解决kotlin写Android项目编译报Execution failed for task ‘:app:kaptDebugKotlin‘.异常
基于simulink的双闭环矢量控制的电压型PWM整流器仿真
leetcode: 17. 电话号码的字母组合
Shell脚本案例---3
Liunx:浅析vim编辑器基本使用
Deep learning single image 3D face reconstruction
QT document reading notes audio example analysis
[转]基于POI的功能区划分()
Simulation of synchronization performance of BOC modulation and demodulation based on MATLAB, output tracking curve and identification curve under different lead lag code distance
深入理解CAS (自旋锁)
uniapp实现横向点击滑动菜单
[software testing] how to sort out your testing business
day18
C thread lock and single multithreading are simple to use
Supervisor installation and use
raid homes and plunder houses!
leetcode-设置交集大小至少为2