Android Studio的调试窗口中“'此'不可用”

时间:2016-02-01 13:46:46

标签: android debugging android-studio hugo-logging

我在Android Studio的调试窗口中收到此消息。这不是静态方法,也不是类。这是什么意思?

enter image description here

6 个答案:

答案 0 :(得分:14)

我认为这是与Reflexion相关的问题。我的项目是使用雨果。一旦我禁用它,bug就会消失。

已推送问题:https://github.com/JakeWharton/hugo/issues/127

答案 1 :(得分:9)

this关键字是对当前对象实例的引用,如官方Java documentation中所示。

在您的情况下,错误消息'this' is not available表示调试器无法访问(即不知道)当前对象。

答案 2 :(得分:1)

将'Build Variant'改为调试

enter image description here

答案 3 :(得分:1)

在Lambda表达式中,我们无法评估变量的值。从lambda表达式更改为正则表达式解决了我的问题

答案 4 :(得分:0)

当我改变我的gradle配置时,我的工作。 这是错误配置:

     buildTypes {
    release {
        minifyEnabled true
        zipAlignEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        signingConfig signingConfigs.release
    }

    debug {
        minifyEnabled true
        zipAlignEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        signingConfig signingConfigs.release
    }
}

并且,这对我有用。

debug {

        minifyEnabled false
        zipAlignEnabled false
        shrinkResources false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        signingConfig signingConfigs.release
    }

答案 5 :(得分:-1)

我有一个简单的解决方法:

int tmp = this.a; // tmp is available
this.a++; // this is not available
int tmp2 = this.a // tmp2 is available