• Home
Name Date Size #Lines LOC

..--

common/06-May-2025-370268

etc/06-May-2025-453350

figures/06-May-2025-

interfaces/innerkits/06-May-2025-2,2661,668

lite/06-May-2025-919703

modules/06-May-2025-12,1489,905

service/06-May-2025-5,9724,234

standard/06-May-2025-3,9473,358

test/06-May-2025-25,66120,571

util/06-May-2025-905713

.gitattributesD06-May-2025631 1615

BUILD.gnD06-May-20253 KiB10294

CODEOWNERSD06-May-2025653 1715

LICENSED06-May-202510.1 KiB177150

OAT.xmlD06-May-20254.6 KiB7824

README.mdD06-May-2025891 2718

README_zh.mdD06-May-20252.7 KiB6549

appdata-sandbox-app.jsonD06-May-202523.4 KiB590589

appdata-sandbox-asan.jsonD06-May-20252 KiB5453

appdata-sandbox-isolated-new.jsonD06-May-20252 KiB6161

appdata-sandbox-isolated.jsonD06-May-20253.1 KiB8583

appdata-sandbox-nweb.jsonD06-May-20252.8 KiB7878

appdata-sandbox.jsonD06-May-202544.9 KiB999998

appdata-sandbox64.jsonD06-May-20253.6 KiB9594

appspawn.cfgD06-May-20252.4 KiB6968

appspawn.gniD06-May-20251.6 KiB4743

appspawn.rcD06-May-2025758 2320

appspawn_preload.jsonD06-May-20252.2 KiB8685

appspawn_systemLib.jsonD06-May-202530 54

bundle.jsonD06-May-20253.7 KiB118117

cjappspawn.cfgD06-May-20251.1 KiB3030

hisysevent.yamlD06-May-20251.7 KiB3922

nativespawn.cfgD06-May-20251.1 KiB3030

startup_events.yamlD06-May-2025904 227

README.md

1# Startup<a name="EN-US_TOPIC_0000001078883578"></a>
2
3-   [Introduction](#section11660541593)
4-   [Directory Structure](#section161941989596)
5-   [Repositories Involved](#section1371113476307)
6
7## Introduction<a name="section11660541593"></a>
8
9Appspawn is responsible for creating application process and setting process information function.
10
11## Directory Structure<a name="section161941989596"></a>
12
13```
14base/startup/appspawn
15├── include                    # include directory
16├── parameter                  # system parameters
17├── src                        # source code
18│   └── socket                 # encapsulation of socket basic library
19└── test                       # test code
20```
21
22## Repositories Involved<a name="section1371113476307"></a>
23
24Startup subsystem
25
26**[appspawn](https://gitee.com/openharmony/startup_appspawn/blob/master/README.md)**
27

README_zh.md

1# appspawn应用孵化器部件
2
3## 简介
4
5应用孵化器,负责接受应用程序框架的命令孵化应用进程,设置其对应权限,并调用应用程序框架的入口。
6
7**图1** appspawn应用孵化器组件框架图
8![](figures/appspawn.png)
9
10## 目录
11```
12base/startup/appspawn_standard
13├─adapter                # 适配外部依赖
14│  └─sysevent            # 系统事件管理
15├─common                 # 通用代码
16├─etc
17├─figures
18├─interfaces             # 应用孵化器组件头文件以及对外接口
19│  └─innerkits
20│      ├─client          # 应用孵化器客户端源码
21│      └─include         # 应用孵化器头文件
22├─lite                   # 小型系统应用孵化器源码
23├─standard               # 标准系统应用孵化器源码
24├─test                   # 应用孵化器组件测试源码
25└─util
26    ├─include            # 应用孵化器工具类头文件
27    └─src                # 应用孵化器工具类源码, 含json处理库及应用沙箱实现源码
28```
29
30## 说明
31
32### 小型系统
33
34  appspawn被init启动后,向IPC框架注册服务名称,之后等待接收进程间消息,根据消息解析结果启动应用服务并赋予其对应权限。
35
36  appspawn注册的服务名称为“appspawn”,在安全子系统限制规则下,目前仅Ability Manager Service有权限可以向appspawn发送的进程间消息。
37
38  appspawn接收的消息为json格式,如下所示:
39  ```
40  "{"bundleName":"testvalid1","identityID":"1234","uID":1000,"gID":1000,"capability":[0]}"
41  ```
42
43  **表 1** 小型系统字段说明
44  | 字段名 | 说明 |
45  | -------- | -------- |
46  | bundleName | 即将启动的应用程序包名,长度≥7字节,≤127字节。 |
47  | identityID | AMS为新进程生成的标识符,由appspawn透传给新进程,长度≥1字节,≤24字节。 |
48  | uID | 即将启动的应用服务进程的uID。 |
49  | gID | 即将启动的应用服务进程的gID。 |
50  | capability | 即将启动的应用服务进程所需的capability权限,数量≤10个。 |
51
52### 标准系统
53  appspawn注册的服务名称为“appspawn”。appspawn 通过监听本地socket,接收来自客户端的请求消息。
54
55  详细使用说明参考开发指南:[appspawn应用孵化组件](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/subsystems/subsys-boot-appspawn.md)
56
57## 限制与约束
58仅支持小型系统和标准系统。
59
60## 相关仓
61**[startup\_appspawn](https://gitee.com/openharmony/startup_appspawn)**
62
63[startup\_init\_lite](https://gitee.com/openharmony/startup_init_lite)
64
65[startup\_bootstrap\_lite](https://gitee.com/openharmony/startup_bootstrap_lite)