Commit Graph

25257 Commits

Author SHA1 Message Date
openharmony_ci df622c8d43 !19440 merge external_depsTOdeps into master
change external_deps to deps

Created-by: zhongshield1
Commit-by: zhongshield1
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!19440
2026-05-26 15:57:30 +08:00
zhongshield1 43729a0bf2 change external_deps to deps
Co-Authored-By: manual
Signed-off-by: zhongshield1 <zhangzezhong8@huawei-partners.com>
2026-05-26 14:43:06 +08:00
openharmony_ci 678f25e2d4 !19131 merge master into master
新增ability v2接口

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

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

**TDD Result**:
![image.png](https://raw.gitcode.com/user-images/assets/4421702/872e76d2-f094-491f-845d-a344f5506ae3/image.png 'image.png')
![image.png](https://raw.gitcode.com/user-images/assets/4421702/3ff914d2-4fa1-494e-8bf7-5f192c8aa028/image.png 'image.png')
**XTS Result**:
![image.png](https://raw.gitcode.com/user-images/assets/4421702/0663605b-99ef-414f-beb6-a28e61be128d/image.png 'image.png')
### 是否已执行L0用例
- [ ] 已验证
- [x] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19131
2026-05-26 12:49:24 +08:00
openharmony_ci 5ff0ca8d97 !19439 merge log into master
添加定界日志

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

**Description**:添加定界日志

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

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

**TDD Result**:pass

**XTS Result**:不涉及

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

See merge request: openharmony/ability_ability_runtime!19439
2026-05-26 12:12:18 +08:00
openharmony_ci d79a8feaa3 !19406 merge refactor/internal-error into master
refactor: throw useful error message for 16000050

Created-by: yangxuguang-huawei
Commit-by: yangxuguang-huawei
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/15316

**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**:
验证OK

**XTS Result**:
验证OK

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


See merge request: openharmony/ability_ability_runtime!19406
2026-05-26 10:27:07 +08:00
openharmony_ci 022ce660e2 !19415 merge isDestroyed into master
UIAbility中增加isDestroyed属性

Created-by: Luobniz21
Commit-by: Luobniz21
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用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19415
2026-05-25 21:04:31 +08:00
openharmony_ci 9e6ace9b4f !19425 merge feature/modular_object_connect into master
feat: support callerProcessPid for ModularObject process reuse

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

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |     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用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19425
2026-05-25 20:58:57 +08:00
yewei0794 02518f9854 feat: restrict reusePid to IN_PROCESS mode and add GetValidAppRunningRecordByPid
- Only set reusePid when MODULAR_OBJECT IN_PROCESS mode (IsInProcess flag)
- Add isInProcess flag to BaseExtensionRecord, set in SetupNewRecord
- Add GetValidAppRunningRecordByPid for PID lookup with validity check
- Revert CheckAppRunningRecordIsExist to original (no reusePid coupling)
- Remove IsProcessMatchedByFieldOrPid, restore inline matching logic
- Move reusePid check before plugin/normal flow in LoadAbility
- Add TDD tests for SetExtensionLoadParam, GetValidAppRunningRecordByPid,
  and LoadAbility reusePid path

Co-Authored-By: Agent

🤖‍ AI[98%] 👌 AI Adopted[98%] 🧑 Human[2%]
Co-authored-by: claude (glm-5.1) <ai@local>

Signed-off-by: yewei0794 <weiyejxnf@163.com>
Change-Id: I00c745f043dbcbbf2879a4f10398825f589049bf
2026-05-25 19:31:30 +08:00
wendel 655e0294f1 add log
Signed-off-by: wendel <yuwenze1@huawei.com>
Co-Authored-By: wendel
Change-Id: I6d246e821c65f1f58676b43779ebd9afd6abc568
2026-05-25 17:53:56 +08:00
openharmony_ci 8fe4968513 !19424 merge setinfoevent into master
Add setAbilityIntanceInfo event

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!19424
2026-05-25 16:34:22 +08:00
yangxuguang-huawei 66ec54a560 refactor: throw useful error message for 16000050
Signed-off-by: yangxuguang-huawei <yangxuguang3@huawei.com>
🤖‍ AI[100%] 👌 AI Adopted[100%] 🧑 Human[0%]
Co-Authored-By: Codex
2026-05-25 15:08:51 +08:00
yewei0794 1047dd56ce feat: support callerProcessPid for ModularObject process reuse
Pass caller PID through LoadParam to bypass customProcessFlag/instanceKey
matching in CheckAppRunningRecordIsExist, enabling IN_PROCESS mode to
reuse the caller's existing process record.

Co-Authored-By: Agent
Signed-off-by: yewei0794 <weiyejxnf@163.com>
Change-Id: I34ed4dc3d4b828def0badab3c579c861c763467a
2026-05-25 14:03:03 +08:00
openharmony_ci 65674d304a !19395 merge add_mem_dump_test_coverage into master
test: 补充PR#19128新增接口的17个单元测试用例

Created-by: wang_jun_long
Commit-by: wang_jun_long
Merged-by: openharmony_ci
Description: ## 描述
为PR#19128(fix Sync Risk)中新增的接口补充单元测试用例。

## 新增测试用例(共17个)

| 文件 | 新增用例 | 覆盖代码 |
|------|---------|---------|
| app_mgr_stub_test.cpp | HandleDumpMem_001/002, HandleReportDumpMemResult_001/002, MemDumpCallbackStub_OnRemoteRequest_001/002/003, MemDumpCallbackProxy_OnMemDumpDone_001 | HandleDumpMem, HandleReportDumpMemResult, MemDumpCallbackStub, MemDumpCallbackProxy |
| app_scheduler_host_test.cpp | HandleScheduleMem_001/002 | HandleScheduleMem |
| app_scheduler_proxy_test.cpp | ScheduleMem_001/002 | ScheduleMem |
| app_mgr_proxy_test.cpp | AppMgrProxy_DumpMem_001, AppMgrProxy_ReportDumpMemResult_001 | DumpMem, ReportDumpMemResult |
| app_mgr_service_inner_mock_test.cpp | DumpMem_001, ReportDumpMemResult_001 | DumpMem, ReportDumpMemResult |
| app_lifecycle_deal_test.cpp | ScheduleMem_001/002 | ScheduleMem |

## 收益
- 提升PR#19128新增代码的测试覆盖率
- 覆盖IMemDumpCallback接口、ScheduleMem/DumpMem/ReportDumpMemResult等新增/修改接口的正常路径和异常路径

关联 Issue: #15304

See merge request: openharmony/ability_ability_runtime!19395
2026-05-25 12:23:49 +08:00
xiatian a1df92f154 新增abilityV2接口
Signed-off-by: xiatian <xiatian44@huawei.com>
Co-Authored-By: Agent
Change-Id: Ie1ae0246a8dc2fe4db7050826c5361a735c7d6bd
2026-05-25 10:53:36 +08:00
openharmony_ci 576ed372bb !19413 merge fix-leakobj-empty-check into master
fix: 防止GetDumpResult将空字符串赋值给dumpResult

Created-by: denganliang
Commit-by: denganliang
Merged-by: openharmony_ci
Description: ## 修改说明

- 防止 GetDumpResult 将 malloc 分配但内容为空字符串的 buf 赋值给 dumpResult
- 根因:当 OHOS_GetMemLeakString malloc 分配了缓冲区但内容为空字符串时,原代码只判断 buf!=nullptr 就赋值
- 增加 *buf!=空字符 判断,与 buf!=nullptr 一起构成双重防御

**IssueNo**:
https://gitcode.com/openharmony/hiviewdfx_hidumper/issues/586

## 关联PR

- openharmony/hiviewdfx_hidumper!767

## 验证

- 编译通过
- 与 hidumper PR 配合验证

See merge request: openharmony/ability_ability_runtime!19413
2026-05-25 10:35:13 +08:00
openharmony_ci 264c57b285 !19423 merge add_UnMountDisShareFile into master
add UnMountDisShareFile

Created-by: weizhijungitee
Commit-by: weizhijun
Merged-by: openharmony_ci
Description: **IssueNo**:https://gitcode.com/openharmony/filemanagement_dfs_service/issues/3039

**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!19423
2026-05-24 22:49:34 +08:00
weizhijun 9bbbe51c9d add UnMountDisShareFile
Co-Authored-By:weizhijun
Signed-off-by: weizhijun <weizhijun3@h-partners.com>
2026-05-23 21:06:04 +08:00
openharmony_ci 5c1df474da !19427 merge fix_tdd into master
add extension tdd

Created-by: ProfaneAria
Commit-by: 任国军
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**:
![image.png](https://raw.gitcode.com/user-images/assets/4421702/064b227d-44f2-4d52-8852-8dddcf270ee3/image.png 'image.png')
**XTS Result**:

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


See merge request: openharmony/ability_ability_runtime!19427
2026-05-23 19:28:47 +08:00
wangzhen a9d5470aba Code simplify
Signed-off-by: wangzhen <wangzhen416@huawei.com>

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

Change-Id: I9ee96fabcd6fd6ef4c2e13a28408d1f2bb0850a0
2026-05-23 18:29:31 +08:00
openharmony_ci 57d5e1174a !19385 merge pid into master
user pid namespace

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

**Description**:

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

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

**TDD Result**:pass

**XTS Result**:不涉及

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

See merge request: openharmony/ability_ability_runtime!19385
2026-05-23 18:26:01 +08:00
openharmony_ci 4051a5dfcf !19421 merge master into master
增加实况窗自定义模板LiveViewCardExtension

Created-by: weixin_46857065
Commit-by: weixin_46857065
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!19421
2026-05-23 17:16:17 +08:00
任国军 23cb935f70 add extension tdd
Co-Authored-By: RenGuojun
Signed-off-by: 任国军 <renguojun1@h-partners.com>

🤖‍ AI[0%] 👌 AI Adopted[0%] 🧑 Human[100%]
2026-05-23 16:31:50 +08:00
wangzhen f8d8bb79da Add setAbilityIntanceInfo event
Co-Authored-By: Agent

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

🤖‍ AI[96%] 👌 AI Adopted[96%] 🧑 Human[4%]
Co-authored-by: claude (glm-5.1) <ai@local>

Change-Id: I2626a087a7bc8b4279d0b76ec4d1aed5decdaf77
2026-05-23 16:24:30 +08:00
openharmony_ci 55db0e361c !19169 merge feat/reuse-extension-timeout-event-for-bg-user into master
feat: 复用EXTENSION_RUNNING_TIMEOUT事件打点后台用户Extension操作

Created-by: zhang_hao_zheng
Commit-by: zhang_hao_zheng
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/15120
**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**:
pass
**XTS Result**:
pass
### 是否已执行L0用例
- [√] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19169
2026-05-23 14:59:35 +08:00
Luobniz21 ee17f1b8c3 ISdEStroyed
Signed-off-by: Luobniz21 <luoyicong@h-partners.com>

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ability_runtime/js_ui_ability.cpp
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#


# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# interactive rebase in progress; onto ff5f91c2dd
# Last command done (1 command done):
#    pick 0021c18056 ISdEStroyed
# No commands remaining.
# You are currently rebasing branch 'isDestroyed' on 'ff5f91c2dd'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ability_runtime/js_ui_ability.cpp
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ability_runtime/js_ui_ability.cpp
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ability_runtime/js_ui_ability.cpp
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ability_runtime/js_ui_ability.cpp
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ability_runtime/js_ui_ability.cpp
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ability_runtime/js_ui_ability.cpp
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ability_runtime/js_ui_ability.cpp
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Mon May 18 22:05:14 2026 +0800
#
# On branch isDestroyed
# Your branch is up to date with 'origin/isDestroyed'.
#
# Changes to be committed:
#	modified:   frameworks/ets/ani/ui_ability/src/ets_ui_ability.cpp
#	modified:   frameworks/ets/ets/@ohos.app.ability.UIAbility.ets
#	modified:   frameworks/native/ability/native/ability_runtime/js_ui_ability.cpp
#	modified:   frameworks/native/ability/native/ui_ability.cpp
#	modified:   interfaces/kits/native/ability/native/ui_ability.h
#	modified:   services/abilitymgr/src/launch_param.cpp
#
# Untracked files:
#	.claude/
#	1.diff
#	2.diff
#
2026-05-23 14:28:56 +08:00
openharmony_ci 063d613a91 !19390 merge arg into master
修改args传递

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

**Description**:

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

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

**TDD Result**:pass

**XTS Result**:不涉及

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

See merge request: openharmony/ability_ability_runtime!19390
2026-05-23 14:08:27 +08:00
openharmony_ci 5b76cfb94a !19400 merge master0521 into master
remove test cli_tool

Created-by: dsz2025
Commit-by: duansizhao
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!19400
2026-05-23 11:24:18 +08:00
weixin_46857065 317a4f445e 增加实况窗自定义模板LiveViewCardExtension
Co-Authored-By: zhanghangming
Signed-off-by: weixin_46857065 <zhanghangming3@h-partners.com>
2026-05-22 19:29:04 +08:00
wang_jun_long 358947f6b7 test: add unit tests for MemDumpCallback and ScheduleMem interfaces
Add 17 unit tests covering new interfaces from PR#19128:
- MemDumpCallbackStub/Proxy (4 tests)
- HandleDumpMem/HandleReportDumpMemResult (4 tests)
- HandleScheduleMem (2 tests)
- ScheduleMem proxy/host (4 tests)
- AppMgrProxy DumpMem/ReportDumpMemResult (2 tests)
- AppMgrServiceInner DumpMem/ReportDumpMemResult (2 tests)
- AppLifeCycleDeal ScheduleMem (2 tests)

Co-Authored-By: Agent
Signed-off-by: 王俊龙 <wangjunlong8@h-partners.com>
Signed-off-by: wang_jun_long <wangjunlong8@h-partners.com>
2026-05-22 16:45:58 +08:00
openharmony_ci ff5f91c2dd !19403 merge attachabilitycontext into master
AttachJsAbility Protect

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!19403
2026-05-22 15:49:36 +08:00
openharmony_ci c5ae33a653 !19354 merge master into master
update: 更新文件 BUILD.gn

Created-by: llj123
Commit-by: llj123
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用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由

Co-Authored-By: Agent


See merge request: openharmony/ability_ability_runtime!19354
2026-05-22 14:17:14 +08:00
openharmony_ci f4d0806ef8 !19402 merge perm into master
offline permission check

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

**Description**:

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

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

**TDD Result**:pass

**XTS Result**:不涉及

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

See merge request: openharmony/ability_ability_runtime!19402
2026-05-22 12:07:55 +08:00
denganliang eb78c43fab fix: 防止GetDumpResult将空字符串赋值给dumpResult
当OHOS_GetMemLeakString malloc分配缓冲区但内容为空字符串时,
原代码只判断buf!=nullptr就直接赋值,增加*buf!='\0'判断,
避免空内容流入IPC传输链。

Co-Authored-By: Agent
Signed-off-by: denganliang <denganliang3@h-partners.com>
Change-Id: I31f55cc5e272e813ba3563942ee177ec0a6cdd3b
2026-05-22 12:02:40 +08:00
zhang_hao_zheng 1414b48491 fix: shorten test names to stay within 120 character line limit
Drop redundant BackgroundUserExtension prefix from HWTEST_F test names
since the fixture class already carries that context.

Signed-off-by: zhang_hao_zheng <zhanghaozheng2@h-partners.com>
Co-Authored-By: Agent
Change-Id: Ib19aecd0e929d3ef01aaf6bea7942c534191f270
2026-05-22 11:41:35 +08:00
openharmony_ci 58d91da7ad !19388 merge 优化ability.specifiedId into master
优化ability.specifiedId

Created-by: zhu-feimo
Commit-by: 朱菲墨
Merged-by: openharmony_ci
Description: **IssueNo**:
[#15298](https://gitcode.com/openharmony/ability_ability_runtime/issues/15298) 
**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!19388
2026-05-22 11:35:15 +08:00
zhang_hao_zheng 0dcce77bbc refactor: rename bg abbreviation to background for clarity
Rename all 'bg' abbreviations to full 'background' word across
BgUserExtensionMonitor feature code, including:
- File names: bg_user_extension_monitor -> background_user_extension_monitor
- Class/struct names: BgUserExtensionMonitor -> BackgroundUserExtensionMonitor
- Method names: OnBgUserExtensionStarted -> OnBackgroundUserExtensionStarted
- Constants: BG_START_EVENT_VALUE -> BACKGROUND_START_EVENT_VALUE
- All log messages and test names

Signed-off-by: zhang_hao_zheng <zhanghaozheng2@h-partners.com>
Co-Authored-By: Agent
Change-Id: Idcf82f70e7381334ab48e2b0a8cb71733fd48e47
2026-05-22 11:02:31 +08:00
openharmony_ci 5944534bdd !19404 merge fixhide into master
hidesensitivetype修改默认值,补充

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!19404
2026-05-22 10:19:11 +08:00
llj123 e250bef52d update: 更新文件 BUILD.gn
Signed-off-by: llj123 <luojie119@h-partners.com>
Co-Authored-By: Agent
2026-05-22 10:14:33 +08:00
openharmony_ci ed56bf5723 !19407 merge revert into master
修复tdd编译错误

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

**Description**:

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

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

**TDD Result**:

**XTS Result**:

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


See merge request: openharmony/ability_ability_runtime!19407
2026-05-21 21:52:20 +08:00
wendel 79661fbf55 modify args
Signed-off-by: wendel <yuwenze1@huawei.com>
Co-Authored-By: wendel
Change-Id: I54d94bd4df2b18a213656c7695f15516e69b0a37
2026-05-21 21:45:22 +08:00
DESKTOP-UGVMD4B\DawnComing 26fae10053 desensitivetype修改默认值,补充
Signed-off-by: lidongrui <lidongrui3@huawei.com>
Co-Authored-By: lidongrui
2026-05-21 21:37:12 +08:00
zhangzhichao0091 a4dd313880 修复tdd编译错误
Signed-off-by: zhangzhichao0091 <zhangzhichao38@huawei.com>
Co-Authored-By: Agent
Change-Id: Iaf34e83849a2d72504f1bcaf9250edf3e0f7b474
2026-05-21 20:22:41 +08:00
openharmony_ci e816427041 !19371 merge feat/skill_caller_uid_v2 into master
feat: pass callerUid when launching skill target

Created-by: RuiChen_01
Commit-by: RuiChen_01
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!19371
2026-05-21 19:35:28 +08:00
openharmony_ci 54bcb288d3 !19381 merge fix/skill_ipc_bounds_check into master
fix: add bounds check for skill ReadFromParcel to prevent IPC attack

Created-by: RuiChen_01
Commit-by: RuiChen_01
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!19381
2026-05-21 18:29:43 +08:00
openharmony_ci acb3fc668d !19396 merge revert into master
revert customized buffer consumer

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

**Description**:

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

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

**TDD Result**:

**XTS Result**:

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


See merge request: openharmony/ability_ability_runtime!19396
2026-05-21 17:28:47 +08:00
openharmony_ci 8fc1a2076d !19391 merge master into master
Revert "编译整改"

Created-by: wan-xiaoqing321
Commit-by: wanxiaoqing
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/distributeddatamgr_udmf/issues/861
**Description**:

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

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

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [x] 不涉及。如不涉及,请写明理由
删除依赖,不涉及功能代码修改

See merge request: openharmony/ability_ability_runtime!19391
2026-05-21 17:06:03 +08:00
openharmony_ci d7542d92cb !19398 merge master into master
修改cpu时间

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

**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!19398
2026-05-21 16:31:43 +08:00
openharmony_ci 5c4f42ad62 !19379 merge pr_19137_fix_dlclose into master
fix: 修复DumpRuntimeHelper中dlopen handle未关闭的资源泄漏问题

Created-by: denganliang
Commit-by: denganliang
Merged-by: openharmony_ci
Description: ## 修改说明

- LoadMemLeakFunc 函数新增 handle 参数,用于返回 dlopen 打开的动态库句柄
- GetDumpResult 和 GetSnapshot 函数在使用完动态库后正确调用 dlclose 关闭句柄
- 添加三个 DumpNativeHeap 单元测试

## 关联Issue

Fixes #15291

## 验证

- 待补充验证结论

See merge request: openharmony/ability_ability_runtime!19379
2026-05-21 16:05:59 +08:00
wangzhen e67f77cfcd AttachJsAbility Protect
Co-Authored-By: Agent

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

🤖‍ AI[76%] 👌 AI Adopted[76%] 🧑 Human[24%]
Co-authored-by: claude (glm-5.1) <ai@local>

Change-Id: I0bd8dc03f814f2ecd7d84154990d332886d55193
2026-05-21 15:33:41 +08:00
openharmony_ci f458dc3f3c !19382 merge master0519 into master
fix bug

Created-by: dsz2025
Commit-by: duansizhao
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!19382
2026-05-21 15:25:08 +08:00