Android Studio 断点调试异常相关选项总结

Android Studio 断点调试异常相关选项总结

一、 Disable until hitting the following breakpoints 下二选一项区别

选项 中文翻译 触发条件 适用场景
when any is thrown 当任意可抛出对象被抛出时 触发任意 Throwable(包含 Exception 异常 + Error 错误) 需监控底层严重问题(如 OutOfMemoryError)时
any exception 任意异常 仅触发 Exception 类型异常(日常业务异常,如 SQLiteException 排查代码逻辑异常(如 Room 插入失败),开发中更常用

二、 Exception BreakpointsSuspend execution 选项说明

  1. 单词含义

    • Suspend:暂停、挂起
    • Execution:执行、运行
    • 整体翻译:暂停执行
  2. 功能区别(与 Kotlin 挂起函数无关)

    勾选状态 效果 适用场景
    ✅ 勾选 触发异常断点时,App 立即暂停,跳转到异常代码行,可查看变量、调用链 开发调试阶段,定位异常根因
    ❌ 不勾选 触发异常断点时,App 正常运行,仅在 Logcat 打印异常堆栈 上线前监控异常,不打断程序流程
  3. 关键注意点

    此选项中的 suspend暂停 App 进程执行 ,和 Kotlin 协程里修饰挂起函数的 suspend 关键字没有任何关联。

三、 结合 Room 进度保存场景的使用建议

  1. 调试 Room 插入进度的异常时,优先选 any exception + 勾选 Suspend execution,精准定位数据库相关异常(如主键冲突、线程问题)。
  2. 若需监控严重错误(如内存溢出导致的进度保存失败),可选择 when any is thrown + 勾选 Suspend execution
  3. 测试阶段想记录异常但不影响 App 播放流程,可选择对应异常类型 + 不勾选 Suspend execution
相关推荐
BoomHe21 小时前
Android AOSP13 原生 Launcher3 壁纸获取方式
android
Digitally21 小时前
如何将联系人从 Android 转移到 Android
android
Freak嵌入式1 天前
LVGL基础知识和概念:视觉样式与资源系统
ide·驱动开发·嵌入式·lvgl·micropython·upypi
李小枫1 天前
webflux接收application/x-www-form-urlencoded参数
android·java·开发语言
爱丽_1 天前
MySQL `EXPLAIN`:看懂执行计划、判断索引是否生效与排错套路
android·数据库·mysql
NPE~1 天前
[App逆向]环境搭建下篇 — — 逆向源码+hook实战
android·javascript·python·教程·逆向·hook·逆向分析
追风20191 天前
PowerShell 7 解决 Codex 中文乱码:完整经验总结(VsCode 背景)
ide·vscode·编辑器
yewq-cn1 天前
AOSP 下载
android
cch89181 天前
Laravel vs ThinkPHP:PHP框架终极对决
android·php·laravel
米码收割机1 天前
【Android】基于安卓app的汽车租赁管理系统(源码+部署方式+论文)[独一无二]
android·汽车