2018-10-01 07:17:07 +08:00
|
|
|
|
# AWTK 调试技巧
|
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
这里收集一些调试技巧,各种疑难杂症的解决方案。请大家把遇到的问题(包括已经解决的)发到 issues 上,我来收集整理。谢谢
|
2018-10-01 07:17:07 +08:00
|
|
|
|
|
|
|
|
|
## 一、输入设备相关问题
|
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
### 1. 指针设备问题的检查列表:
|
2018-10-18 11:26:48 +08:00
|
|
|
|
|
|
|
|
|
* 设备名称是否正确。
|
|
|
|
|
* 电阻屏是否校准。
|
2021-07-11 17:18:42 +08:00
|
|
|
|
* x/y 是否需要对调或其它变换。
|
2018-10-18 11:26:48 +08:00
|
|
|
|
|
2018-10-01 07:17:07 +08:00
|
|
|
|
## 二、显示相关问题
|
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
### 1. 图片颜色不正常的检查列表:
|
2018-10-18 11:26:48 +08:00
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
* LCD 的格式是否正确。
|
2018-10-18 11:26:48 +08:00
|
|
|
|
* 图片格式是否正确。
|
2018-10-01 07:17:07 +08:00
|
|
|
|
|
|
|
|
|
## 三、资源相关问题
|
|
|
|
|
|
2018-10-07 11:38:00 +08:00
|
|
|
|
## 四、内存问题
|
2018-10-01 07:17:07 +08:00
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
* 1. 内存出现莫名其妙的错误
|
2018-10-07 11:38:00 +08:00
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
> 通常是堆栈溢出,把栈空间修改大点试试。如果支持 jpg/png,栈至少 32K,如果支持 gif 栈至少 48K。
|
2018-10-07 11:38:00 +08:00
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
* 2. 内存泄露
|
2018-10-18 11:26:48 +08:00
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
> 如果定义宏了 ENABLE\_MEM\_LEAK\_CHECK,每次内存分配都会记录分配的位置、大小和时间,并在窗口打开和关闭时,通过 log\_debug 显示当前未释放的内存块。根据块数的变化可以看出是否有内存泄露,并根据分配的位置可以定位泄露的位置。
|
2018-10-18 11:26:48 +08:00
|
|
|
|
|
|
|
|
|
## 五、性能问题
|
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
性能问题的检查列表:
|
2018-10-18 11:26:48 +08:00
|
|
|
|
|
2021-07-11 17:18:42 +08:00
|
|
|
|
* 1. 硬件加速是否启用。
|
|
|
|
|
* 2.memcpy 的速度是否正常。
|
|
|
|
|
* 3. 在 window\_manager\_paint\_normal 函数中查看 last\_paint\_cost 是否在合理的范围。
|