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