You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio部分类无法调试求助:ViewModel后类无调试信息

解决ViewModel之后类无法显示调试信息的问题
  • 检查混淆与代码压缩配置
    确保debug构建类型未开启代码压缩,在模块的build.gradle中确认:

    buildTypes {
        debug {
            minifyEnabled false
            shrinkResources false
        }
    }
    

    若必须开启debug混淆,需添加规则保留业务类的调试信息:
    在proguard-rules.pro中添加:

    -keep class com.yourpackage.repository.** { *; }
    -keep class com.yourpackage.datasource.** { *; }
    -keepattributes SourceFile,LineNumberTable
    
  • 禁用编译器优化
    在debug构建中禁用JIT优化,避免变量被优化导致调试时无法查看:
    在build.gradle的debug配置中添加:

    debug {
        testCoverageEnabled false
        jniDebuggable true
        renderscriptDebuggable true
        compileOptions {
            compilerArgs += ['-Xlint:unchecked', '-Xlint:deprecation']
        }
    }
    

    同时在Android Studio的调试配置中,勾选Disable JIT optimization during debugging(路径:Run > Edit Configurations > Debugger > Android Debugger)

  • 检查调试器线程跟踪设置
    在调试窗口的Threads面板中,取消勾选Hide system threads,确认业务代码所在的后台线程处于活跃状态,断点已正确命中对应线程。

  • 排查依赖注入代理问题
    若使用Hilt、Dagger等DI框架,动态代理生成的类可能屏蔽调试信息。可在debug模式下禁用代理优化:
    对于Hilt,在build.gradle中添加:

    debug {
        hilt {
            enableTransformForLocalTests = false
        }
    }
    
  • 确认模块调试配置
    若项目采用多模块架构,确保所有业务模块的build.gradle中开启debuggable:

    android {
        defaultConfig {
            debuggable true
        }
    }
    

内容的提问来源于stack exchange,提问作者Celso Andre

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 12:52:08