【问题标题】:Build failed error: cannot find symbol if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R)构建失败错误:如果 (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) 找不到符号
【发布时间】:2020-11-27 21:45:23
【问题描述】:

我尝试在开发后构建我的 ionic 应用程序;但在此过程中出现以下错误:

C:\incidentApp\platforms\android\app\src\main\java\com\moust\cordova\videoplayer\VideoPlayer.java:123: 错误:找不到符号 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { ^ > 任务 :app:compileDebugJavaWithJavac 符号:变量 R 位置:类 VERSION_CODES C:\incidentApp\platforms\android\app\src\main\java\com\moust\cordova\videoplayer\VideoPlayer.java:124: 错误:找不到符号 dialog.getWindow().getInsetsController().hide(WindowInsets.Type.statusBars()); ^ 符号:变量类型位置:类 WindowInsets C:\incidentApp\platforms\android\app\src\main\java\com\moust\cordova\videoplayer\VideoPlayer.java:124: 错误:找不到符号 dialog.getWindow().getInsetsController().hide(WindowInsets.Type.statusBars()); ^ 符号:方法 getInsetsController() 位置:类 Window 注意: 一些输入文件使用或覆盖已弃用的 API。注意:重新编译 使用 -Xlint:deprecation 了解详细信息。注意:一些输入文件使用 未经检查或不安全的操作。注意:使用 -Xlint:unchecked 重新编译 详情。 3 个错误

FAILURE:构建失败并出现异常。

Task :app:compileDebugJavaWithJavac FAILED 24 个可操作任务:1 个已执行,23 个最新

  • 出了什么问题:任务 ':app:compileDebugJavaWithJavac' 执行失败。

编译失败;有关详细信息,请参阅编译器错误输出。

  • 尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。

  • 通过https://help.gradle.org获得更多帮助

在 2m 5s 内构建失败 c:\incidentApp\platforms\android\gradlew: 命令失败,退出代码 1 错误输出: C:\incidentApp\platforms\android\app\src\main\java\com\moust\cordova\videoplayer\VideoPlayer.java:123: 错误:找不到符号 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { ^ 符号:变量 R 位置:类 VERSION_CODES C:\incidentApp\platforms\android\app\src\main\java\com\moust\cordova\videoplayer\VideoPlayer.java:124: 错误:找不到符号 dialog.getWindow().getInsetsController().hide(WindowInsets.Type.statusBars()); ^ 符号:变量类型位置:类 WindowInsets C:\incidentApp\platforms\android\app\src\main\java\com\moust\cordova\videoplayer\VideoPlayer.java:124: 错误:找不到符号 dialog.getWindow().getInsetsController().hide(WindowInsets.Type.statusBars()); ^ 符号:方法 getInsetsController() 位置:类 Window 注意: 一些输入文件使用或覆盖已弃用的 API。注意:重新编译 使用 -Xlint:deprecation 了解详细信息。注意:一些输入文件使用 未经检查或不安全的操作。注意:使用 -Xlint:unchecked 重新编译 详情。 3 个错误

FAILURE:构建失败并出现异常。

  • 出了什么问题:任务 ':app:compileDebugJavaWithJavac' 执行失败。

编译失败;有关详细信息,请参阅编译器错误输出。

我已经尝试了一切(删除 android 包并重新安装)我可以动手但仍然无法正常工作。

下面是我的 build.gradle

 project.ext {
      defaultBuildToolsVersion="29.0.3" //String
      defaultMinSdkVersion=22 //Integer - Minimum requirement is Android 5.1
      defaultTargetSdkVersion=28 //Integer - We ALWAYS target the latest by default
      defaultCompileSdkVersion=29 //Integer - We ALWAYS compile with the latest by default
    }

【问题讨论】:

    标签: java android cordova


    【解决方案1】:

    只需将 android/app/build.gradle 文件中的 compileSdkVersion 和 targetSdkVersion 升级到 31。

    【讨论】:

      【解决方案2】:

      更新-:确保您将 android/app/build.gradle 文件中的 compileSdkVersion 设置为 31

      Old-:我在 Flutter 应用中使用 Geolocator 插件时遇到此错误。要解决此错误,您必须打开 LocationMapper.java(您可以在调试控制台中找到此路径)。并删除这部分

      if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S)
      

      并确保您的 android 编译版本为 30(对于 GeoLocator Build.gradle)

          if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
            position.put("is_mocked", location.isMock());
         } 
      

      【讨论】:

      • 您先生,您是救生员!我花了几个小时让地理定位器工作,最后我把它修好了,多亏了你!非常感谢!
      • 正确的方法是固定地理定位器的版本号。参考here
      【解决方案3】:

      Build.VERSION_CODES.R 仅存在于API 30,但您正在使用 API 29 进行编译。

      如果你想使用Build.VERSION_CODES.R,compileSdkVersion 应该设置为 30。

      cordova-android@10 更新

      截至 cordova-android@10,compileSdkVersion 已被删除 android-targetSdkVersion 统一设置目标和编译 SDK 版本,以便它们始终保持一致。

      【讨论】:

        【解决方案4】:

        查找并将此行从 30 更改为 31。

        【讨论】:

          【解决方案5】:

          我刚刚在 build.gradel 中从 compileSdkVersion 30 更改为 compileSdkVersion 31,一切都变好了

          【讨论】:

            【解决方案6】:

            检查您下载的 SDK 版本并确保所有内容都相同:- compileSdkVersion XX minSdkVersion XX targetSdkVersion XX

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2021-08-09
              • 2015-03-22
              • 1970-01-01
              • 2019-02-20
              • 1970-01-01
              • 2016-03-06
              相关资源
              最近更新 更多