要进行调试,首先构建app的时候必须选择是Debug模式,而不能是Release模式。

接下来的内容转载自:

http://www.cnblogs.com/gaoteng/p/5711314.html

条件断点(Conditional Breakpoints)

这个调试模式是我最喜欢的,简直不能再方便了,以前遇到在循环里面打断点,需要看某个条件下的值,我只能一遍遍点击,直到满足条件。
那么这个条件断点改怎么用呢,在你的断点上点击右键,就会弹出一个选择对话框,在里面的condition框里面填写上你所需要中断的条件即可,程序就会在满足你的条件下才会断点停下。下面放张动态图,一看就明白,之后的几个技巧也都会附一张动态图来形象的展示。

快捷键

  • 点击鼠标右键

日志断点(Logging Breakpoints)

这个模式也相当有用,之前调试程序的时候,如果需要输出一些变量的值,总是需要在代码中写Log,然后重新运行程序,这有才能看到新的输出结果,现在有了日志断点这个神器,就不需要了。下面介绍如何操作,首先还是在断点上点击鼠标右键,把suspend置为非选中状态,然后在下面的Log evaluated Expression填写上你需要输出的信息

快捷键

  • 点击鼠标右键,选择suspend

临时断点(Temporary Breakpoints)

这种断点在你第一次断点停下之后,就会被移除,也就是在调试过程中只会断掉一次

快捷键

  • 鼠标:ALT+鼠标左键 在断点区点击

  • mac:Cmd+Alt+Shift+F8

  • Windows/Linux: Ctrl+Alt+Shift+F8

失效断点(Disable Breakpoints)

这种断点适用于你不想删除这个断点,但是又不想让这个断点执行,所以暂时让他失效掉,这个功能,感觉不会很常用,毕竟创建一个断点也就是点击一下的事。

快捷键

  • 鼠标:ALT+鼠标左键 在断点上点击

(附着调试)Attach Debugger

这个在不知道之前,我调试程序总是需要点击调试模式,然后让程序重新运行,然后会忍受相当慢的启动过程,直到我遇到这个模式。
在这个模式下,你不需要重启app,直接点击,就可以调试,而且在遇到别人在测试你的app,这时候遇到问题,你只需要插在你的电脑上,开启这个,就可以直接断点调试了,非常方便。

快捷键

  • 鼠标:点击build->Attach to Android Process 选择app所在的进程

计算表达式(Evaluate Expression)

这个功能用来在调试过程中查看变量的值,或者可以计算任何复杂自定义表达式的。这个功能在调试的时候,也非常有用,比如以前我想得到一个变量的值,我总需要通过底部variable中的this指针,然后找到成员变量,而有了这个之后,你可以随意观察变量,同时做一些表达式的计算

快捷键

  • Alt+F8

观察变量(Inspect Variable)

这个功能直接可以观察某个变量的值,而不需要打开上面Evaluate Expression这个的对话框,更加快捷

快捷键

  • Alt+鼠标左键 在变量上面点击

标记object(Mark Object)

在调试的过程中,这个方式允许你给某个特定的object打标签,以便后面的断点里面可以进行识别这个变量

快捷键

    • 鼠标右键,选择mark object

    • MAC:F3

    • windows/linux:F11

程序猿必读

android调试的更多相关文章

  1. 在 MAC OS X 安装 ADB (Android调试桥)

    什么是 ADB? Android调试桥( adb )是一个开发工具,帮助安卓设备和个人计算机之间的通信. 这种通信大多是在USB电缆下进行,但是也支持Wi-Fi连接. adb 还可被用来与电脑上运行的 ...

  2. 2.[WP Developer体验Andriod开发]Andriod Studio结合Visual Studio Emulator for Android调试Android App

    0. 工欲善其事必先利其器 上一篇博客对比了一下Android和WinPhnoe的布局容器,后续篇章重点放在Android的开发上了. 说到开发就绕不开调试程序,调试Android App我们有2种选 ...

  3. Android 开发笔记 “android调试遇到ADB server didn't ACK以及顽固的sjk_daemon进程 ”

    资源来源:http://blog.csdn.net/wangdong20/article/details/20839533 做Android调试的时候经常会遇到,程序写好了,准备接上手机调试,可不一会 ...

  4. [Android学习笔记]Android调试

    Eclipse Debug 快捷键: [Ctrl + Shift + B]: 添加/取消断点 [F5]:进入方法中 [F6]:单步执行 [F7]:执行完毕此方法 [F8]:继续执行,直接跳到下一个断点 ...

  5. Android调试优化篇

    为了开发出商业级的应用程序,大规模的測试是不可避免的,同一时候为了提高应用程序的执行速度,须要进行必要的优化.在Android中.提供了丰富的调试与优化工具供开发者应用,主要包含模拟器和目标端等两种场 ...

  6. 2.[Andriod]Andriod Studio结合Visual Studio Emulator for Android调试Android App

    0. 工欲善其事必先利其器 上一篇博客对比了一下Android和WinPhnoe的布局容器,后续篇章重点放在Android的开发上了. 说到开发就绕不开调试程序,调试Android App我们有2种选 ...

  7. Stetho简化Android调试(二)

    Stetho简化Android调试(一) 一文中讲述了如何使用Stetho结合Chrome远程调试Android App. Stetho给我们调试带来很大的便利,效率显著提升的同时也产生一个问题:如果 ...

  8. cocos2d-js 写日志log 查看日志log Android调试查看log

    1 输出日志的方式,当然是cc.log了 2 如何查看日志?        a)如果小程序可以先在浏览器上跑,例如用chrome,在控制台就可以看到输出的log:        b)如果在真机上调试, ...

  9. Android调试桥-Android Debug Birdge详解

    原文:http://android.eoe.cn/topic/summary Android调试桥-Android Debug Birdge Android调试桥(adb)是一个多功能的命令行功具,它 ...

  10. Android调试大法 自定义IDE默认签名文件==>微信支付、微信登录、微信分享,debug时调试通过,release时调不起微信

    转载地址:http://blog.yanzhenjie.com Android调试大法之自定义IDE默认签名文件,你是否为调试第三方SDK时debug签名和release签名发生冲突而烦恼?你是否在d ...

随机推荐

  1. JS 九宫格算法 用原生js实现

    九宫格算法核心: 利用控件索引index计算出控件所在的行数和列数: 利用控件计算出left距离: 利用控件计算出top距离: 写特效时需要用到定位 公式: 行 row=parseInt(i/cols ...

  2. [ZJOI2006]Book书架

    Description Sally有一个很大的书柜.这个书柜的构造有些独特,即书柜里的书是从上至下堆放成一列.她用1到n的正整数给每本书都编了号.Sally在看书的时候,每次取出一本书,看完后放回书柜 ...

  3. Android内存管理(14)*使用开源库LeakCanary检查内存泄漏

    1.简介 它是一个非常简单好用的内存泄漏检测工具库.可以轻松检测Activity,Fragment的内存泄漏.如果有内存泄漏,它会产生一个通知. 2.资料 官网: https://github.com ...

  4. c++类的内存布局

    问题: 考察了reinterpret_cast和static_cast的区别.顺道发现了一个可以查看c++内存布局的工具(在VS中). 结果: 前两个输出的地址形同,后一个不同. class A{in ...

  5. Storm概念学习系列之storm的可靠性

    这个概念,对于理解storm很有必要. 1.worker进程死掉 worker是真实存在的.可以jps查看. 正是因为有了storm的可靠性,所以storm会重新启动一个新的worker进程. 2.s ...

  6. 【Python-2.7】换行符和制表符

    在Python中换行符“\n”表示接下来的内容将会换到下一行显示,制表符“\t”表示下面的内容显示时在前面留出空白,如打印如下内容: Dear: I love you forever! 上面的一段话分 ...

  7. Think PHP中URL_MODE相关事项

    官网上有关于URL_MODE的解释:http://document.thinkphp.cn/manual_3_2.html#url 这里主要讲一下URL_MODE为2,即REWRITE模式. REWR ...

  8. 安卓app测试之内存分析

    一.内存分析步骤 1.启动App. 2.使用monitor命令打开:ADM(包含DDMS) ->update heap 3.操作app,点几次GC 4.dump heap 5.hprof-con ...

  9. CAD删除组(网页版)

    主要用到函数说明: _DMxDrawX::DeleteGroup 根据组名,删除组.详细说明如下: 参数 说明 BSTR pszName 组名 js代码实现如下: 1 2 3 4 5 6 7 8 9 ...

  10. 【转载】Appium环境搭建(Windows版)

    注:appium安装到C盘,node.js安装到C盘 一.安装node.js 1.到官网下载node.js:https://nodejs.org/en/download/ 2.获取到安装文件后,直接双 ...