Сборка Flutter apk не удалась из-за audio_players

Мое приложение использует audio_players для воспроизведения звука. Он отлично работает на симуляторе iOS, но когда я пытаюсь собрать APK для запуска приложения на физическом устройстве, я получаю следующую ошибку:

      FAILURE: Build completed with 2 failures.

1: Task failed with an exception.
-----------
* Where:
Build file '/Users/joshua/.pub-cache/hosted/pub.dev/audioplayers_android-2.0.0/android/build.gradle' line: 29

* What went wrong:
A problem occurred evaluating project ':audioplayers_android'.
> Failed to apply plugin [id 'de.mannodermaus.android-junit5']
   > android-junit5 plugin requires Gradle 6.1.1 or later

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================

2: Task failed with an exception.
-----------
* Where:
Script '/Users/joshua/Documents/flutter/packages/flutter_tools/gradle/flutter.gradle' line: 463

* What went wrong:
A problem occurred configuring project ':audioplayers_android'.
> Failed to notify project evaluation listener.
   > Cannot invoke method substring() on null object
   > compileSdkVersion is not specified.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================

* Get more help at https://help.gradle.org

BUILD FAILED in 1m 56s
Running Gradle task 'assembleRelease'...                          118.0s
Gradle task assembleRelease failed with exit code 1

1 ответ

Сообщение об ошибке предполагает, что существуют две проблемы, мешающие вам создать APK для вашего приложения. Первая проблема связана с плагином android-junit5, для которого требуется более новая версия Gradle. Вторая проблема связана с плагином audioplayers_android, который не может настроить проект из-за отсутствия compileSdkVersion.

Чтобы решить первую проблему, вы можете обновить версию Gradle в своем проекте. Вы можете сделать это, изменив файл build.gradle в корне вашего проекта и обновив путь к классам для плагина Gradle. Например:

      buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:8.0.2' // the gradel is updated to 8.0.2
        classpath 'de.mannodermaus.gradle.plugins:android-junit5:1.7.1.1'
    }
}

Чтобы решить вторую проблему, вам необходимо указать compileSdkVersion в файле build.gradle для плагина audioplayers_android. Например:

      android {
    compileSdkVersion 31
    ...
}
Другие вопросы по тегам