Commit Graph

1097 Commits

Author SHA1 Message Date
AsukaSoryu bed5560260 add ipc option for image start
Signed-off-by: AsukaSoryu <gongyuechen@huawei.com>
2026-07-14 20:15:34 +08:00
SKY2001 7a2accc6ad 修复Agent调试超时问题
Signed-off-by: SKY2001 <songtianyu10@huawei.com>
2026-06-29 14:24:21 +08:00
wangzhen 1de71622dd dynamic load image_native
Co-Authored-By: Agent

Signed-off-by: wangzhen <wangzhen416@huawei.com>

🤖‍ AI[98%] 👌 AI Adopted[98%] 🧑 Human[2%]

🤖‍ AI[0%] 👌 AI Adopted[0%] 🧑 Human[100%]

Change-Id: I0f5ee21f0ea499d0abc9a0690249f040cb715805
2026-06-16 14:38:54 +08:00
blueCodeBaixue 60a3c2c172 Appfreeze增加GC和io信息
Co-Authored-By: Agent
Signed-off-by: blueCodeBaixue <baixue64@h-partners.com>
2026-06-04 21:46:43 +08:00
ouyangli4 081bec2857 app_input_block freeze interval check
Signed-off-by: ouyangli4 <ouyangli4@huawei.com>
Co-Authored-By: Agent
2026-05-27 22:52:48 +08:00
wang_jun_long ff63793800 Merge branch 'fixSyncRisk0427' of git@gitcode.com:wang_jun_long/ability_ability_runtime.git into 'master'
# Conflicts:
#   conflict interfaces/inner_api/app_manager/include/appmgr/app_mgr_ipc_interface_code.h
Co-Authored-By: Agent
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>
2026-05-15 14:33:51 +08:00
renjh5496 d2675f6cfb Merge branch 'iccccc' of git@gitcode.com:renjh5496/ability_ability_runtime.git into 'master'
# Conflicts:
#   conflict interfaces/inner_api/app_manager/include/appmgr/app_launch_data.h
2026-05-14 09:28:14 +08:00
openharmony_ci 6c11a7efeb !18997 merge NotifyMainProcess into master
NotifyMainProcess

Created-by: xialiangwei
Commit-by: xialiangwei;xialiangwei1@huawei.com
Merged-by: openharmony_ci
Description: **IssueNo**: https://gitcode.com/openharmony/arkcompiler_ets_runtime/issues/12865

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18997
2026-05-14 05:38:18 +08:00
wang_jun_long 1fbfd121be Merge branch 'fixSyncRisk0427' of git@gitcode.com:wang_jun_long/ability_ability_runtime.git into 'master'
Co-Authored-By: Agent
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>
2026-05-13 15:48:58 +08:00
renjh5496 9587c24efe Merge branch 'iccccc' of git@gitcode.com:renjh5496/ability_ability_runtime.git into 'master' 2026-05-12 20:53:22 +08:00
wang_jun_long 77ef78a8fd fix Sync Risk
Co-Authored-By: Agent
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>
2026-05-12 16:06:17 +08:00
openharmony_ci f11a304ff2 !19212 merge master into master
feat: 新增ARKWEB_V8内存dump类型并扩展MemDumpInfo参数

Created-by: LiuZX1997
Commit-by: LiuZX1997;liuzhenxiong
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/hiviewdfx_faultloggerd/issues/1926
**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由
Co-Authored-By: agent

See merge request: openharmony/ability_ability_runtime!19212
2026-05-11 22:28:08 +08:00
renjh5496 f226b7b7cb 解冲突
Co-Authored-By: manual
Signed-off-by: renjh5496 <renjianhao@h-partners.com>
2026-05-09 15:20:36 +08:00
jsjzju dd50446e61 MakeImage support ability
Signed-off-by: jsjzju <jinsenjun@huawei.com>
Change-Id: I48c6ed04aa5d6e1aa362ebc9c20403db55c7acc4
Co-Authored-By: Agent
2026-05-09 11:13:04 +08:00
LiuZX1997 904c198394 update: 更新文件 app_mem_dump_info.cpp
修改静态告警

Signed-off-by: LiuZX1997 <liuzhenxiong@huawei.com>
2026-05-07 22:18:48 +08:00
liuzhenxiong d861a194eb feat: 新增ARKWEB_V8内存dump类型并扩展MemDumpInfo参数
新增内容:
1. MemDumpType枚举新增ARKWEB_V8类型(值为4)
2. MemDumpInfo结构体新增参数:
   - uint32_t renderPid(渲染进程ID)
   - bool needDump(默认值true)
   - bool needGc(默认值false)
3. 实现DumpArkwebV8Heap方法(参考KMP_KOTLIN实现)
4. 更新序列化/反序列化逻辑以支持新增参数
5. 补充测试用例:
   - DumpMem_0400(验证ARKWEB_V8类型)
   - DumpHeapSnapshot系列测试(覆盖参数组合和边界值)

修改文件:
- app_mem_dump_info.h/cpp(结构体定义和序列化)
- dump_runtime_helper.h/cpp(dump实现)
- 相关测试文件

Signed-off-by: liuzhenxiong <liuzhenxiong@huawei.com>
2026-05-07 21:51:23 +08:00
zhangzezhong e834d16eb5 add delayed exit procesds
Co-Authored-By:qy
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2026-05-07 17:32:47 +08:00
xialiangwei 0b3dbac5dc Merge branch 'NotifyMainProcess' of git@gitcode.com:xialiangwei/ability_ability_runtime.git into 'master'
# Conflicts:
#   conflict interfaces/inner_api/app_manager/include/appmgr/app_launch_data.h
2026-05-07 09:54:27 +08:00
openharmony_ci 26a9115455 !19048 merge master into master
jsvm dump

Created-by: aefaefw
Commit-by: aefaefw
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/arkcompiler_jsvm/issues/122
**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19048
2026-04-30 20:28:17 +08:00
openharmony_ci 626d73ed2d !18687 merge isch into master
IsChildProcess

Created-by: renjh5496
Commit-by: renjh5496;renjianhao
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:
UT:
![image.png](https://raw.gitcode.com/user-images/assets/4421702/7361d745-9abc-4d82-9b1c-10c578416ad1/image.png 'image.png')
**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18687
2026-04-29 08:54:46 +08:00
renjh5496 7037224277 与创建子进程状态保持一致
Co-Authored-By: manual
Signed-off-by: renjh5496 <renjianhao@h-partners.com>
2026-04-28 17:41:47 +08:00
openharmony_ci 30c98ef89d !18853 merge calltoback into master
Add callToBackground flag

Created-by: zivzhen
Commit-by: wangzhen
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |   ok     |
| 成员变量进行赋值或创建需要排查并发                               |      ok  |
| 谨慎在lambda表达式中使用引用捕获                                |      ok  |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |  ok      |
| map\vector\list\set等stl模板类使用时需要排查并发                |      ok  |
| 谨慎考虑加锁范围                                               |       ok |
| 在IPC通信中谨慎使用同步通信方式                                 |   ok     |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |    ok    |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |     ok   |
| 禁止多个独立创建的智能指针管理同一地址                           |     ok   |
| 禁止在析构函数中抛异步任务                                      |    ok    |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |    ok    |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     ok   |
| 禁止接口返回局部变量引用                                        |     ok   |
| 禁止在信号函数中加锁                                            |    ok   |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    ok    |
| 禁止将同一个cpp编译在不同的so中                                 |    ok    |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |      ok |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    ok    |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |    ok    |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |     ok   |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |    ok    |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |     ok   |
| readParcelable获取的对象使用前需要判空                            |      ok  |
| 分配和释放内存的函数需要成对出现                                   |    ok    |
| 申请内存后异常退出前需要及时进行内存释放                            |    ok    |
| 内存申请前必须对内存大小进行合法性校验                              |    ok    |
| 内存分配后必须判断是否成功                                         |     ok   |
| 禁止使用realloc、alloca函数                                       |     ok   |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |    ok    |
| 禁止打印内存地址                                                  |     ok   |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |    ok    |
| 禁止对有符号整数进行位操作符运算                                    |    ok    |
| 禁止对指针进行逻辑或位运算                                         |     ok   |
| 循环次数如果收外部数据控制,需要检验其合法性                         |    ok    |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |     ok   |
| 谨慎使用不可重入函数                                               |      ok  |
| 必须检查安全函数的返回值,并进行正确处理                             |   ok     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |      ok  |

**TDD Result**:
pass
**XTS Result**:
pass

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18853
2026-04-23 20:27:22 +08:00
aefaefw 275b17de9e jsvm dump
Signed-off-by: aefaefw <weimingjin@h-partners.com>
2026-04-23 18:24:34 +08:00
jusiyao d3e4fe8082 Merge branch 'master' of git@gitcode.com:jusiyao/ability_ability_runtime.git into 'master'
# Conflicts:
#   conflict interfaces/inner_api/app_manager/include/appmgr/app_mgr_ipc_interface_code.h
Co-Authored-By:jsy
2026-04-22 14:13:29 +08:00
xialiangwei1@huawei.com 830dea9311 NotifyMainProcess
Co-Authored-By: Agent
Signed-off-by: xialiangwei1@huawei.com <xialiangwei1@huawei.com>
2026-04-22 11:24:46 +08:00
朱菲墨 9e5974f174 AMS退出原因整改性能优化
Signed-off-by: 朱菲墨 <zhufeimo1@huawei.com>
Co-Authored-By: Agent
2026-04-22 09:43:49 +08:00
wangzhen dc68e3039f Add byCallStatus info
Co-Authored-By: Agent

Signed-off-by: wangzhen <wangzhen416@huawei.com>
Change-Id: I0230da8d8af94bb2a8e250e5f0b8c0f68a3f2880
2026-04-21 22:27:06 +08:00
jusiyao eec655b51b Merge branch 'master' of git@gitcode.com:jusiyao/ability_ability_runtime.git into 'master'
# Conflicts:
#   conflict interfaces/inner_api/app_manager/include/appmgr/app_mgr_ipc_interface_code.h
2026-04-21 19:30:56 +08:00
openharmony_ci 1b8d201d16 !18922 merge kmp0410 into master
add KMP code

Created-by: wang_jun_long
Commit-by: wang_jun_long
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/14938

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18922
2026-04-21 10:44:15 +08:00
openharmony_ci 48a82830c3 !18967 merge adj into master
adj优先级调整_标识前台应用因息屏导致退后台场景

Created-by: lidongrui
Commit-by: DESKTOP-UGVMD4B\DawnComing
Merged-by: openharmony_ci
Description: 
**IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |     √     |
| 成员变量进行赋值或创建需要排查并发                               |    √     |
| 谨慎在lambda表达式中使用引用捕获                                |    √      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |    √      |
| map\vector\list\set等stl模板类使用时需要排查并发                |    √      |
| 谨慎考虑加锁范围                                               |    √      |
| 在IPC通信中谨慎使用同步通信方式                                 |    √      |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |    √      |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |    √      |
| 禁止多个独立创建的智能指针管理同一地址                           |     √     |
| 禁止在析构函数中抛异步任务                                      |     √     |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |     √     |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     √     |
| 禁止接口返回局部变量引用                                        |    √      |
| 禁止在信号函数中加锁                                            |    √      |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    √      |
| 禁止将同一个cpp编译在不同的so中                                 |     √     |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |     √     |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    √      |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |     √     |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |     √     |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |     √     |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |    √      |
| readParcelable获取的对象使用前需要判空                            |    √      |
| 分配和释放内存的函数需要成对出现                                   |    √      |
| 申请内存后异常退出前需要及时进行内存释放                            |    √      |
| 内存申请前必须对内存大小进行合法性校验                              |    √      |
| 内存分配后必须判断是否成功                                         |    √      |
| 禁止使用realloc、alloca函数                                       |    √      |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |     √     |
| 禁止打印内存地址                                                  |     √     |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |    √      |
| 禁止对有符号整数进行位操作符运算                                    |    √      |
| 禁止对指针进行逻辑或位运算                                         |     √     |
| 循环次数如果收外部数据控制,需要检验其合法性                         |     √     |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |     √     |
| 谨慎使用不可重入函数                                               |     √     |
| 必须检查安全函数的返回值,并进行正确处理                             |     √     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |     √     |


**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18967
2026-04-21 10:13:25 +08:00
openharmony_ci ea9f8daf75 !18948 merge shieldfreeze0413 into master
add shield freeze code

Created-by: wang_jun_long
Commit-by: wang_jun_long
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/developtools_profiler/issues/2174

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18948
2026-04-20 21:31:52 +08:00
wang_jun_long c3a1929ec6 add KMP code
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>
Co-Authored-By: Agent
2026-04-20 14:10:31 +08:00
wang_jun_long 3aa3ecfa70 add KMP code
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>

Co-Authored-By: Agent
2026-04-20 14:10:13 +08:00
wang_jun_long ed1426585b add shield freeze code
Co-Authored-By: Agent
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>
2026-04-18 10:00:18 +08:00
DESKTOP-UGVMD4B\DawnComing beba0d8a98 adj优先级调整_标识前台应用因息屏导致退后台场景
Signed-off-by: lidongrui <lidongrui3@huawei.com>
Co-Authored-By: Agent
2026-04-17 15:08:17 +08:00
aefaefw b41d3453fb repair callback log
Signed-off-by: aefaefw <weimingjin@h-partners.com>
2026-04-13 17:45:32 +08:00
openharmony_ci 67a4fbeb39 !18751 merge game into master
游戏预启动需求

Created-by: lidongrui
Commit-by: DESKTOP-UGVMD4B\DawnComing
Merged-by: openharmony_ci
Description: Specific stage preloading
**IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |     √     |
| 成员变量进行赋值或创建需要排查并发                               |    √     |
| 谨慎在lambda表达式中使用引用捕获                                |    √      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |    √      |
| map\vector\list\set等stl模板类使用时需要排查并发                |    √      |
| 谨慎考虑加锁范围                                               |    √      |
| 在IPC通信中谨慎使用同步通信方式                                 |    √      |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |    √      |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |    √      |
| 禁止多个独立创建的智能指针管理同一地址                           |     √     |
| 禁止在析构函数中抛异步任务                                      |     √     |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |     √     |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     √     |
| 禁止接口返回局部变量引用                                        |    √      |
| 禁止在信号函数中加锁                                            |    √      |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    √      |
| 禁止将同一个cpp编译在不同的so中                                 |     √     |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |     √     |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    √      |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |     √     |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |     √     |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |     √     |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |    √      |
| readParcelable获取的对象使用前需要判空                            |    √      |
| 分配和释放内存的函数需要成对出现                                   |    √      |
| 申请内存后异常退出前需要及时进行内存释放                            |    √      |
| 内存申请前必须对内存大小进行合法性校验                              |    √      |
| 内存分配后必须判断是否成功                                         |    √      |
| 禁止使用realloc、alloca函数                                       |    √      |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |     √     |
| 禁止打印内存地址                                                  |     √     |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |    √      |
| 禁止对有符号整数进行位操作符运算                                    |    √      |
| 禁止对指针进行逻辑或位运算                                         |     √     |
| 循环次数如果收外部数据控制,需要检验其合法性                         |     √     |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |     √     |
| 谨慎使用不可重入函数                                               |     √     |
| 必须检查安全函数的返回值,并进行正确处理                             |     √     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |     √     |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18751
2026-04-13 17:00:49 +08:00
jusiyao f7dfbf0f14 SetTerminateTimeOutFlag
Signed-off-by: jusiyao <jusiyao1@huawei.com>
2026-04-13 10:04:39 +08:00
openharmony_ci 1d5bd94069 !18918 merge master into master
add interface for app telemetry

Created-by: shead-master
Commit-by: shead-master
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:
![ScreenShot_20260411142203_001.png](https://raw.gitcode.com/user-images/assets/4421702/5ec2df46-c503-4f24-8a5f-f7bebe2add52/ScreenShot_20260411142203_001.png 'ScreenShot_20260411142203_001.png')
![ScreenShot_20260411142203_002.png](https://raw.gitcode.com/user-images/assets/4421702/c349dc7c-d928-44e4-b146-2ad63115f0e5/ScreenShot_20260411142203_002.png 'ScreenShot_20260411142203_002.png')
**XTS Result**:

### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18918
2026-04-11 21:58:45 +08:00
DESKTOP-UGVMD4B\DawnComing 430ac0d9d9 游戏预启动需求
Signed-off-by: lidongrui <lidongrui3@huawei.com>
Co-Authored-By: Agent
2026-04-11 20:39:27 +08:00
shead-master 11c83efad3 add interface for app telemetry
Signed-off-by: shead-master <wuzhenyang1@huawei.com>
2026-04-11 16:32:02 +08:00
jusiyao a2986d025a SetTerminateTimeOutFlag
Signed-off-by: jusiyao <jusiyao1@huawei.com>
2026-04-10 15:43:41 +08:00
jusiyao e46e62f7f9 SetTerminateTimeOutFlag
Signed-off-by: jusiyao <jusiyao1@huawei.com>
2026-04-10 11:40:17 +08:00
openharmony_ci 71c7d73416 !18879 merge pr_18792_fix into master
add dumpresult

Created-by: Lutao98
Commit-by: Lutao98
Merged-by: openharmony_ci
Description: **IssueNo**: https://gitcode.com/openharmony/hiviewdfx_hidumper/issues/563

**Description**:

本次提交基于 PR #18792 cherry-pick 并解冲突,新增应用进程 native 内存 dump 能力(DumpMem),支持通过 hidumper 触发 native 内存泄漏检测和快照导出。

主要修改:
1. 新增 MemDumpInfo 数据结构及其 Parcelable 序列化/反序列化实现
2. 新增 DumpMem IPC 通道:AppMgrInterfaceCode::DUMP_MEM_PROCESS,支持同步/异步两种调用模式
3. 完整的 IPC 链路:AppMgrClient -> AppMgrProxy -> AppMgrStub -> AppMgrServiceInner -> AppRunningManager -> AppRunningRecord -> AppLifeCycleDeal -> AppSchedulerProxy -> AppSchedulerHost -> MainThread
4. DumpRuntimeHelper 新增 DumpMem/DumpNativeHeap/GetDumpResult/GetSnapshot 实现,通过 dlopen libmemleak.z.so 动态加载内存泄漏检测函数
5. 提取公共 LoadMemLeakFunc 辅助函数消除 dlopen/dlsym 重复代码
6. 补充单元测试和 mock 实现

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              | 已检查,ScheduleMem同步模式直接执行,异步模式通过mainHandler PostTask |
| 成员变量进行赋值或创建需要排查并发                               | 不涉及         |
| 谨慎在lambda表达式中使用引用捕获                                | 已检查,异步lambda使用值捕获 |
| mapector\list\set等stl模板类使用时需要排查并发                | 不涉及         |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        | 已检查,异步使用wptr |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    | 已检查         |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  | 已检查         |
| readParcelable获取的对象使用前需要判空                            | 已检查         |
| 分配和释放内存的函数需要成对出现                                   | 已检查         |
| 内存分配后必须判断是否成功                                         | 已检查         |
| 必须检查安全函数的返回值,并进行正确处理                             | 已检查         |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18879
2026-04-09 19:10:27 +08:00
openharmony_ci 22e9e43a53 !18817 merge addpreload02 into master
addpreload02

Created-by: renjh5496
Commit-by: renjianhao
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18817
2026-04-07 23:25:19 +08:00
renjianhao e686e82e6b preload2
Signed-off-by: renjianhao <renjianhao@h-partners.com>
2026-04-03 19:42:22 +08:00
Lutao98 9ccb6c72ad add dumpresult
Signed-off-by: Lutao98 <lutao31@huawei.com>
Co-Authored-By: Agent
Signed-off-by: Lutao98 <lutao31@huawei.com>
2026-04-03 17:17:55 +08:00
openharmony_ci 576223f968 !18848 merge master into master
增加获取全量ability信息接口

Created-by: muxiggg
Commit-by: muxiggg
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:增加获取全量ability信息接口

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |      Y    |
| 成员变量进行赋值或创建需要排查并发                               |    Y      |
| 谨慎在lambda表达式中使用引用捕获                                |    Y      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |       Y   |
| map\vector\list\set等stl模板类使用时需要排查并发                |      Y    |
| 谨慎考虑加锁范围                                               |     Y     |
| 在IPC通信中谨慎使用同步通信方式                                 |      Y    |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |      Y    |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |     Y     |
| 禁止多个独立创建的智能指针管理同一地址                           |      Y    |
| 禁止在析构函数中抛异步任务                                      |    Y      |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |     Y     |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |        Y  |
| 禁止接口返回局部变量引用                                        |     Y     |
| 禁止在信号函数中加锁                                            |     Y     |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |   Y       |
| 禁止将同一个cpp编译在不同的so中                                 |     Y     |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |    Y      |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |   Y       |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |    Y      |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |    Y      |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |   Y       |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |       Y   |
| readParcelable获取的对象使用前需要判空                            |  Y        |
| 分配和释放内存的函数需要成对出现                                   |   Y       |
| 申请内存后异常退出前需要及时进行内存释放                            |     Y     |
| 内存申请前必须对内存大小进行合法性校验                              |      Y    |
| 内存分配后必须判断是否成功                                         |      Y    |
| 禁止使用realloc、alloca函数                                       |     Y     |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |    Y      |
| 禁止打印内存地址                                                  |    Y      |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |    Y      |
| 禁止对有符号整数进行位操作符运算                                    |       Y   |
| 禁止对指针进行逻辑或位运算                                         |      Y    |
| 循环次数如果收外部数据控制,需要检验其合法性                         |      Y    |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |   Y       |
| 谨慎使用不可重入函数                                               |      Y    |
| 必须检查安全函数的返回值,并进行正确处理                             |      Y    |
| 禁止仅通过TokenType类型判断绕过权限校验                             |      Y    |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [Y ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18848
2026-04-03 16:37:37 +08:00
openharmony_ci 6c33ba9209 !18876 merge master into master
代码同步

Created-by: zyr020212
Commit-by: zyr020212
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/14904
**Description**:
代码同步
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |√          |
| 成员变量进行赋值或创建需要排查并发                               |  √         |
| 谨慎在lambda表达式中使用引用捕获                                |        √   |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |  √         |
| map\vector\list\set等stl模板类使用时需要排查并发                |          √ |
| 谨慎考虑加锁范围                                               |          √ |
| 在IPC通信中谨慎使用同步通信方式                                 | √          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |√           |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          √ |
| 禁止多个独立创建的智能指针管理同一地址                           |          √ |
| 禁止在析构函数中抛异步任务                                      |          √ |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             | √          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          √ |
| 禁止接口返回局部变量引用                                        |          √ |
| 禁止在信号函数中加锁                                            |          √ |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |  √         |
| 禁止将同一个cpp编译在不同的so中                                 |          √ |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |   √        |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |  √         |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |√           |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |      √     |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |    √       |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          √ |
| readParcelable获取的对象使用前需要判空                            |          √ |
| 分配和释放内存的函数需要成对出现                                   |          √ |
| 申请内存后异常退出前需要及时进行内存释放                            |     √      |
| 内存申请前必须对内存大小进行合法性校验                              |          √ |
| 内存分配后必须判断是否成功                                         |          √ |
| 禁止使用realloc、alloca函数                                       |          √ |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          | √          |
| 禁止打印内存地址                                                  |          √ |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |     √      |
| 禁止对有符号整数进行位操作符运算                                    |          √ |
| 禁止对指针进行逻辑或位运算                                         |          √ |
| 循环次数如果收外部数据控制,需要检验其合法性                         |    √       |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |        √   |
| 谨慎使用不可重入函数                                               |          √ |
| 必须检查安全函数的返回值,并进行正确处理                             |     √      |
| 禁止仅通过TokenType类型判断绕过权限校验                             |         √  |

**TDD Result**:
![image.png](https://raw.gitcode.com/user-images/assets/4421702/45955dcd-5add-48c1-bfab-ffcf4d8aa433/image.png 'image.png')
**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由

See merge request: openharmony/ability_ability_runtime!18876
2026-04-03 16:37:07 +08:00
openharmony_ci 6ee55360b5 !18772 merge master into master
hidumper support merge jsheap raw file

Created-by: LiuZX1997
Commit-by: liuzhenxiong
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/hiviewdfx_hidumper/issues/555

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18772
2026-04-03 15:51:40 +08:00