使用Carbide C++进行ODD(On Device Debugging)(转)

使用Carbide C++进行ODD(On Device Debugging)

Note!
本文所使用的IDE为最新的(截止至2010-08-15)Carbide C++ 2.6,若您的Carbide C++低于2.6版本,可以点击菜单“Help->Check for Updates” 检测最新版本并升级Carbide C++至最新版本。
强烈建议您将Carbide C++升级至2.6,此版本在编译速度以及自动检测设备方面等方面都有很大改进,联机调试更加方便。
本文使用Symbian^3手机N8作为Debugging Device,文中所介绍的方法不仅仅适用于Symbian^3手机的ODD,S60 3rd和5th手机也可使用同样的步骤进行ODD。

联机调试(On Device Debugging)是开发者在开发过程中经常用到的技术,本文详细介绍了进行ODD的具体步骤。

Contents

 [hide]

[edit]准备工作

1、安装Ovi Suite 

为了使PC更好的连接Symbian^3手机,请下载安装Ovi Suite。 

2、蓝牙驱动 

若要使用蓝牙连接手机,最好安装Widcomm蓝牙驱动,否则可能会出现蓝牙无法连接的错误。 

3、TRK 

手机端需要安装TRK才能与PC通信进行ODD,N8手机目前对应的TRK版本是s60_tb_9_2_app_trk_3_2_7.sisx,可以在这里下载。更多关于TRK的下载,可以在网址找到。

[edit]相关设置

1、导入或新建一个工程 

按照在Carbide C++中开发Symbian^3应用所介绍的步骤来导入或者新建一个工程。 

2、工程设置 

在“Project Explorer”视图中右键工程,选择“Build Configuration->Set Active->Phone Debug(GCCE)[Nokia_Symbian3_SDK_V0.8]”:

File: ODD_gcce_set_phone_debug.PNG 

右键工程,选择“Properties”,在Properties对话框中选择“Carbide.C++->Build Configurations”,单击“Add”按钮: 

File: ODD_gcce_set_debug_config_bt_sis_setting2.PNG

在出现的SIS Properties对话框中,设置pkg,打包生成的sis文件名以及签名所用的证书: 

File: ODD_gcce_set_debug_config_bt_sis_setting3.PNG

关于此部分设置更详细的信息,也可参考在Carbide C++中开发Symbian^3应用-编译真机章节。 

3、手机设置 

开始调试前,手机端需要运行TRK并连接到PC。运行TRK,左键“选项->Settings”:

File: TRK_config_option.jpg 

Connection”可以设置使用蓝牙(Bluetooth)或者数据线(USB)连接手机,此处我们选择“Bluetooth”,然后选择右键“返回”。

File:TRK_config_connect.jpg

左键“选项->Connect”,连接至PC,此时将看到蓝牙查询对话框,搜寻周围可用的蓝牙设备,如下图所示,选择目标设备进行连接:

File: TRK_config_bt_search.jpg 

连接过程中,PC端的Widcomm可能会弹出蓝牙连接提示:

File: ODD_gcce_bt_bible.PNG 

单击该消息气泡,允许蓝牙连接:

File: ODD_gcce_bt_bible_confirm.PNG 

连接成功后,TRK显示成功:

File: TRK_config_connected.jpg 

4、开始调试 

在“Project Explorer”视图中右键工程,选择“Debug As->Debug Symbian OS Application on Phone or Simulator”: 

File: ODD_gcce_set_debug_as.PNG

在出现的“New Launch Configuration Wizard”对话框中,可以看到当前默认的设置信息,若设置正确,即可单击“Debug”按钮开始调试:

File: ODD_gcce_set_debug_start_debug.PNG 

Note!
Carbide C++ 2.6在手机连接到PC时,会自动提示设备已连接,并完成默认的配置,此时开发者只需要单击上图中的“Debug”按钮即可开始联机调试。

若默认配置有误,可以自己手动修改配置,修改方法如下: 
1、Connection设置 
单击Connect to device右侧的Change按钮:

File:ODD_gcce_set_debug_config.PNG 

在出现的New Connection对话框中选择Setup Connection选项卡:

File:ODD_gcce_set_debug_config_bt_connection.PNG 

Connection Type处选择连接类型,可以是蓝牙,也可以是USB; 
Connection Name处设置连接名称,可以自己起个名字; 
Serial Port处设置连接的端口号,注意:此部分设置的端口号,必须与蓝牙或者USB实际连接上的端口号一致!! 

如果使用蓝牙连接,可以在Widcomm中查看蓝牙串口服务的端口号,右键单击屏幕下方Widcomm图标,选择Bluetooth配置,在出现的对话框中选择本地服务选项卡: 

File:ODD_gcce_set_debug_config_bt_config.PNG

如果使用USB连接,可以右键我的电脑->属性->硬件->设备管理->端口处查看USB所连接的串口号。 

2、Debug Process设置 
单击Debug Process右侧的Change按钮,在出现的对话框中检查相关设置信息,若SIS File to Install处为None,请点击Modify SIS builder settings for build configuration...进行相关设置(此部分设置步骤与本文工程设置处介绍的步骤相同): 

File:ODD_gcce_set_debug_config_bt_sis_setting.PNG 


Carbide C++将会自动编译、打包、签名应用程序,然后将程序推送到手机开始调试:

File: ODD_gcce_downloading_exe.PNG 

应用程序在手机执行:

File: TRK_config_run_helloworld.jpg 

在AppUI::HandleCommandL中设置断点:

File: ODD_gcce_debug_break_point.PNG 

手机端点击左软键“选项->Hello”菜单,此时Carbide C++将在刚才设置的断点处停止,开发者可以在PC进行ODD调试自己的程序。

File: TRK_config_debug_helloworld.jpg

[edit]注意事项

在Debug过程中,如果出现下图所示的错误,可能是由于Carbide C++生成的自签名证书的时间与手机时间不匹配造成,可以尝试将手机时间向后调整若干天以解决此问题:

File:ODD_gcce_debug_alert.PNG

posted @ 2010-11-08 09:20  冰岛  阅读(705)  评论(0编辑  收藏  举报