1、MTK 快速调试定位的几种方法2010-12-03 10:32:19| 分类: MTK 工作总结 | 标签: |字号大中小 订阅 在 debug 调试时你也许常常发现有思路如何改,但就苦于找不到要改的地方。所以快速的定位代码是至关重要。在 debug 时,最重要的是能够准确快速的定位代码,一般常用的有如下几种方式1.在模拟器中使用断点模拟器中断跟踪断点设置函数:/ 触屏相关 wgui_touch_screen.cwgui_general_pen_down_hdlr / 触摸屏按下函数wgui_general_pen_move_hdlr / 触摸屏移动函数wgui_general_pen_dow
2、n_hdlr / 触摸屏松开函数wgui_general_pen_repeat_hdlr / 重复wgui_general_pen_abort_hdlr / 放弃操作在 wingui.c 此函数中 setup_UI_wrappers 有相关全局变量的初始赋值和定义EntryNewScreen / 进入一个新的 screen 都会调用的函数ExecuteCurrKeyHandler / 执行按键的函数ExecuteCurrHiliteHandlerExecuteCurrHiliteHandler_Ext / 执行当前高亮的函数ExecuteCurrProtocolHandler /执行当前协议栈
3、的函数execute_softkey_function /执行 softkey 的函数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_
4、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 叠加显示时刷新某一区域的
5、函数UI_BLT_double_buffer /刷新一块区域UI_set_font /设置字体3。在模拟器中设置变量值改变的断点4。搜索菜单 ID 如 MAIN_MENU_ENTERTAINMENT_MENU_ID5。搜索字符串 ID 如 MAIN_MENU_MENU_TEXT6。搜索图片 ID 如 MAIN_MENU_PHONEBOOK_ICON7. 超级终端调试:8.Catcher 调试2.MMI 绘制设置断点 跟踪屏幕每一处字串绘制:设置断点 UI_move_text_cursor:gui_move_text_cursor =UI_move_text_cursor图标测量:设置断点_me
6、asure_imagegui_measure_image = _measure_image图标显示:设置断点_show_imagegui_show_image = _show_image水平线和垂直线的绘制:设置断点 UI_draw_vertical_line 和 UI_draw_horizontal_linegui_draw_vertical_line = UI_draw_vertical_line;gui_draw_horizontal_line = UI_draw_horizontal_line;字串测量、坐标位置、打印:设置断点 UI_print_text、UI_measure_string 、 UI_move_text_cursorgui_measure_string = UI_measure_stringgui_move_text_cursor =UI_move_text_cursorgui_print_text =UI_print_text绘制图片的函数:gdi_image_draw-gdi_image_codec_draw