memory-corruption-arkts:基于HarmonyOS的内存问题定位工具演示项目

此Codelab将引导您使用DevEco Studio内置HWASan和BinXO工具去定位踩内存问题。通过一个数组越界访问的示例工程,完整演示工具使用步骤及日志分析方法。

分支2Tags0
当前项目代码仓暂无内容

踩内存问题分析用例

项目简介

本示例旨在展示踩内存导致的崩溃问题。

效果预览

直板机效果 平板机效果

使用说明

启动应用后,点击“数组越界访问”,进入数组越界示例页面。通过向左或向右滑动切换图片,每次滑动操作会从数组中获取对应索引位置的图片文件名。 数组的有效索引范围为 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              // 应用静态资源目录
```

相关权限

不涉及

约束和限制

  1. 本示例仅支持标准系统上运行,支持设备:直板机、平板。

  2. HarmonyOS系统:HarmonyOS 6.0.0 Release及以上。

  3. DevEco Studio版本:DevEco Studio 6.1.0 Release及以上。

  4. HarmonyOS SDK版本:HarmonyOS 6.1.0 Release SDK及以上。

项目介绍

此Codelab将引导您使用DevEco Studio内置HWASan和BinXO工具去定位踩内存问题。通过一个数组越界访问的示例工程,完整演示工具使用步骤及日志分析方法。

定制我的领域