- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android调试及DDMS的使用
试 阅:
……. DDMS 的工作原理
DDMS将搭建起IDE与测试终端(Emulator 或者connected device)的链接,它们应用各自独立的端口监听调试器的信息,DDMS可以实时监测到测试终端的连接情况。当有新的测试终端连接后,DDMS将捕捉到 终端的ID,并通过adb建立调试器,从而实现发送指令到测试终端的目的。
DDMS监听第一个终端App进程的端口为8600,APP进程将分配8601,如果有更多终端或者更多APP进程将按照这个顺序依次类推。DDMS通过8700端口(”base port”)接收所有终端的指令。
下边通过GUI详细了解DDMS的一些功能
Devices
在GUI的左上角可以看到标签为”Devices”的面板,这里可以查看到所有与DDMS连 接的终端的详细信息,以及每个终端正在运行的APP进程,每个进程最右边相对应的是与调试器链接的端口。因为Android是基于Linux内核开发的操 作平台,同时也保留了Linux中特有的进程ID,它介于进程名和端口号之间。
在面板的右上角有一排很重要的按键他们分别是Debug the selected process、Update Threads、Update Heap、Stop Process和ScreenShot。……
正 文:
主要内容
? Android下如何调试程序?
? Android DDMS如何使用?
一、Android下如何调试程序?
写代码是每个程序员最乐意做的事,然而在开发中也会遇到很多令程序员很头疼的事情。如果说让程序员最头疼的事情是看到无数bug、软件的发布遥遥无 期,那么让程序员最最头疼的事情是程序在调试状态下没有问题然而在实际运行中确有问题。调试程序是每个程序员工作中必不可少的部分,而且可以毫不夸张地说 调试程序暂用了程序员50%的工作时间。由此可见,调试程序是每个程序员必不可少的技术,调试水平的高低决定了程序员水平的高低。在开发Android程 序前,有必要总结下如何调试Android程序。目前就开发过程中,常用调试程序的方法总结如下:
1. 使用Eclipse开发平台调试;
2. 结合Android SDK调试;
3. 使用JUnit调试;
使用Eclipse开发平台调试
这是使用Eclipse工具开发Android必须熟练掌握的调试技术,主要包括:设置断点、查看变量值、查看当前堆栈等。打开Eclipse工具,单击“Run”
以及在调试的过程中,打开其他调试面板,相信只要使用一次就完全明白了。不要小瞧这些调试工具,只要你细心,说不定其他同事好几天没有解决的bug,你通过这些工具就发现了。所以熟练使用这些工具,是开发人员必须的,在有些时候甚至可以事半功倍的效果。
结合Android SDK调试
在复杂的程序运行过程中,如何调试程序了?把程序运行过程的信息保存为文件或者输出到IDE中,这样就可以知道程序是否是正常运行了。
在Android中可以使用Log类,Log类在android.util包中,可以使用它将运行过程的信息输出到IDE中,直接查看程序运行的过程。Log 类提供了若干静态方法 : Log.v(String tag, String msg); Log.d(String tag, String msg); Log.i(String tag, String msg); Log.w(String tag, String msg); Log.e(String tag, String msg);
分别对应 Verbose,Debug,Info,Warning,Error。 tag是一个标识,可以是任意字符串,通常可以使用类名+方法名,主要是用来在查看日志时提供一个筛选条件。程序运行后,在show view中选择Locat就可以直接看到输出了。也可以在程序运行后,可以通过DDMS 查看程序的运行过程记录,并可以通过String tag来过滤输出的信息,关于Android DDMS如何使用,请阅读Android DDMS使用详细说明。
除了以上方法外,我们也可以把程序运行过程信息的输出当作程序运行的一部分,比如使用Toast Notificatio将输出信息显示在界面中,当然这些只是些调试代码,在发布程序时需要去掉。
以及在调试的过程中,打开其他调试面板,相信只要使用一次就完全明白了。不要小瞧这些调试工具,只要你细心,说不定其他同事好几天没有解决的bug,你通过这些工具就发现了。所以熟练使用这些工具,是开发人员必须的,在有些时候甚至可以事半功倍的效果。
结合Android SDK调试
在复杂的程序运行过程中,如何调试程序了?把程序运行过程的信息保存为文件或者
文档评论(0)