Error: cannot find symbol variable LOLLIPOP

Error: cannot find symbol variable LOLLIPOP

我在不同的 android 库中看到了很多关于检测设备是否支持 LOLLIPOP 的示例。但是当我在我的应用程序中使用它时,它会抛出以下错误:

Error:(20, 60) error: cannot find symbol variable LOLLIPOP

例如我的源代码是:

static boolean isLollipop() {
    return Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP || Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP_MR1;
}

我正在使用最新版本的 Android Studio 并更新并安装了所有软件包。

此语句有错误:

Build.VERSION_CODES.LOLLIPOP

此外,当我检查 VERSION_CODES 的选项时,LOLLIPOP 不存在于该列表中。

看来您使用的是旧的构建工具,或者您缺少一些库。

我已将您的代码粘贴到我的 Android Studio 中并且它有效。

请将您的 build.gradle 与此进行比较:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23           //THIS GUY
    buildToolsVersion "23.0.2"    //THIS GUY

    defaultConfig {
        applicationId "com.example.piotr.myapplication"
        minSdkVersion 15
        targetSdkVersion 23     //THIS GUY
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.1' //THIS GUY
    compile 'com.android.support:design:23.1.1'
}

我已经匹配了可能对您的代码很重要的部分。

希望对您有所帮助

我粘贴了适用于我的代码。 尝试将您的代码与我的 gradle.build 进行比较。 让我知道你是否解决了这个问题

    apply plugin: 'com.android.application'

 android {
compileSdkVersion 26           //THIS GUY
buildToolsVersion "26.0.2"    //THIS GUY

defaultConfig {
    applicationId "com.example.piotr.myapplication"
    minSdkVersion 15
    targetSdkVersion 23     //THIS GUY
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

 dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:26.0.2' //THIS GUY
compile 'com.android.support:design:26.0.2'
}

添加到模块的 build.gradle。

api 'com.android.support:support-annotations:27.0.0'
> Task :app:compileDebugJavaWithJavac FAILED
<Ionic-app>\platforms\android\app\src\main\java\com\ionicframework\cordova\webview\IonicWebViewEngine.java:11: error: package android.support.annotation does not exist
import android.support.annotation.RequiresApi;
                             ^
<Ionic-app>\platforms\android\app\src\main\java\com\ionicframework\cordova\webview\IonicWebViewEngine.java:137: error: cannot find symbol
@RequiresApi(Build.VERSION_CODES.LOLLIPOP)
 ^
symbol:   class RequiresApi
location: class IonicWebViewEngine.ServerClient
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
2 errors

最近几天,我在使用最新的 cordova-android 版本 9.0.0

时遇到了上述错误
ionic cordova plugin add cordova-plugin-androidx-adapter

最后,通过安装 plug-in.

解决了问题

如果已经添加了 androidx 和 androidx-adapter 插件,那么您必须删除这些插件。诀窍是在将这些插件添加回您的项目之前添加平台。

如果平台已添加,您将不得不删除它。

ionic cordova platform rm android
ionic cordova plugin rm cordova-plugin-androidx
ionic cordova plugin rm cordova-plugin-androidx-adapter

从项目中删除这些东西后,您可以添加平台(android 在这种情况下),然后您必须添加插件才能解决此问题。

ionic cordova platform add android
ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter

完成这些步骤后,只需构建项目,错误就会消失!