DEBUG快速定位问题的方法

在debug时,最重要的是能够准确快速的定位代码,一般常用的有如下几种方式


1.在模拟器中使用断点

模拟器中断跟踪断点设置函数:
// 触屏相关
wgui_general_pen_down_hdlr // 触摸屏按下函数
wgui_general_pen_move_hdlr // 触摸屏移动函数
wgui_general_pen_down_hdlr // 触摸屏松开函数
wgui_general_pen_repeat_hdlr // 重复
wgui_general_pen_abort_hdlr // 放弃操作

在wingui.c 此函数中setup_UI_wrappers有相关全局变量的初始赋值和定义
EntryNewScreen // 进入一个新的screen都会调用的函数
ExecuteCurrKeyHandler // 执行按键的函数
ExecuteCurrHiliteHandler // 执行当前高亮的函数
ExecuteCurrProtocolHandler //执行当前协议栈的函数
UI_fill_rectangle // 填充一个矩形框
UI_draw_vertical_line // 画一条垂直线
UI_draw_horizontal_line // 画一条水平线
UI_draw_dotted_horizontal_line //水平虚线
UI_draw_dotted_vertical_line // 垂直虚线
UI_print_text // 画一个字符串
UI_print_bordered_text // 画一个有边色字符串
UI_print_text_n // 画一个有n个字符的字符串
UI_print_bordered_text_n // 画一个有n个字符的带边框色字符串
UI_print_bordered_character //画一个的带边框色字符
UI_print_character //画一个字符
gdi_image_draw //从绘图事件开始跟踪的函数
_show_image // 画一个gif
_show_transparent_image //画有设透明色的图片
_show_animation_frame // 画设置祯数的图片
gdi_layer_blt_previous // 同一个layer刷新某一区域的函数
gdi_layer_blt_ext // 几个layer叠加显示时刷新某一区域的函数
UI_BLT_double_buffer //刷新一块区域
UI_set_font //设置字体
3。在模拟器中设置变量值改变的断点
4。搜索菜单ID 如MAIN_MENU_ENTERTAINMENT_MENU_ID
5。搜索字符串ID如MAIN_MENU_MENU_TEXT
6。搜索图片ID 如MAIN_MENU_PHONEBOOK_ICON

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值