此Codelab将引导您使用DevEco Studio内置HWASan和BinXO工具去定位踩内存问题。通过一个数组越界访问的示例工程,完整演示工具使用步骤及日志分析方法。
当前项目代码仓暂无内容
踩内存问题分析用例
项目简介
本示例旨在展示踩内存导致的崩溃问题。
效果预览
| 直板机效果 | 平板机效果 |
|---|---|
![]() |
![]() |
使用说明
启动应用后,点击“数组越界访问”,进入数组越界示例页面。通过向左或向右滑动切换图片,每次滑动操作会从数组中获取对应索引位置的图片文件名。 数组的有效索引范围为 0 至 7。当滑动操作导致索引超出有效范围时,有一定概率触发应用崩溃。
工程目录
```
├── entry/src/main/cpp
│ ├── types
│ │ └── libentry
│ │ └── Index.d.ts // NAPI 接口类型声明
│ ├── CMakeLists.txt // CMake 构建配置文件
│ └── napi_init.cpp // native 层实现
├── entry/src/main/ets
│ ├── common
│ │ └── Constants.ets // 公共常量类
│ ├── entryability
│ │ └── EntryAbility.ets // 程序入口类
│ ├── entrybackupability
│ │ └── EntryBackupAbility.ets // 备份类
│ └── pages
│ ├── ArrayIndexOutOfBounds.ets // 数组越界访问页
│ └── Index.ets // 首页
└── entry/src/main/resource // 应用静态资源目录
```
相关权限
不涉及
约束和限制
-
本示例仅支持标准系统上运行,支持设备:直板机、平板。
-
HarmonyOS系统:HarmonyOS 6.0.0 Release及以上。
-
DevEco Studio版本:DevEco Studio 6.1.0 Release及以上。
-
HarmonyOS SDK版本:HarmonyOS 6.1.0 Release SDK及以上。

