Android 调试

异常跟踪

两种基本方法

  • 打LOG
  • 设置断点调试

打log

  • 在logcat filter中能通过关键字过滤相关log,如搜索fatal exception 就可以定位到崩溃异常
  • 调试时可以使用String.formart对输出进行格式化
  • 即使不连接电脑,Android设备会自动保存近10分钟的日志

设置断点调试
设置断点后,程序会在停止在断点前一行。
Debug'app' 按钮是将项目重新编译后进入调试,Attach debugger 是把直接运行调试,项目不需要重编,由于调试模式比较消耗性能,可以在正常模式下将前缀步骤跑完,然后在适当的时机attach debugger,该方式比较灵活,故调试程序一般使用后者。
停止调试可以通过店家停止按钮停止程序,或者点击关闭按钮断开调试器。
还可以设置异常断点,通过run-view breakpoints,添加断点,并指定要捕获的异常种类,之后在调试程序时debugger会自动检测出异常并显示在面板上,但异常断点不一定可靠,因为可能其他模块,如系统框架出现的同类异常也会触发断点。所以该功能要慎用,此外,多余断点需要及时清除。

  • Android Lint是Android应用代码的静态分析器,能够检查编译器无法发现的问题,主动使用通过Analyze-Inspect Code
    注意:调试状态下程序的效率会大大降低

  • R文件问题
    针对资源编译错误的问题,一般有如下方式处理
    1.重新检查XML文件——其校验功能有时不可靠
    2.clean project,项目会重编,建议经常操作
    3.同步gradle,Sync Project With Gradle Files,studio会使用正确的配置重编项目
    4.使用Android Lint查看项目信息

参考文章
Android Studio 中的调试技巧
作者:zhuanghongji

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android调试技巧汇总 Android开发过程中,定位是解决疑难问题的第一步,Debug的能力往往反映一个开发...
    韩拓阅读 1,508评论 0 0
  • 前言 大家都知道我们在逆向分析的时候,很多时候主要在分析逻辑。网络抓包、数据来源流向分析、页面逻辑跳转分析、动态调...
    Jafir阅读 4,755评论 2 12
  • 在应用开发中,我们常常会进行日志打印或者debug调试,以此来分析运行时的一些信息,便于发现bug和问题。Andr...
    jimjayce阅读 2,019评论 0 1
  • 附着调试(Attach Debuger) 就是这个东西。 我们常常调试程序的时候就是点 Debug app 按钮,...
    白帽子耗子阅读 1,515评论 3 10
  • 1、工具介绍 IDA pro: 反汇编神器,可静态分析和动态调试。 模拟机或者真机:运行要调试的程序。 样本:阿里...
    格老子阅读 4,064评论 0 0