Сборка Flutter Android завершается с ошибкой с плагином Workmanager - конфликт версий KotlinAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Сборка Flutter Android завершается с ошибкой с плагином Workmanager - конфликт версий Kotlin

Сообщение Anonymous »

Я разрабатываю приложение Flutter, которое использует плагин Workmanager для фоновых задач. Приложение отлично работает на iOS, но на Android возникают проблемы со сборкой. Вот моя настройка:
Проблема сборки Flutter Workmanager на Android
Среда:
  • < li>Версия Flutter: 3.x
  • Плагин Workmanager: ^0.5.0
  • Версия Kotlin: 1.9.22
  • Версия Java: 17
  • Целевой SDK: 34
    Минимальное количество SDK: 26
Проблема:
При сборке приложения для Android процесс сборки завершается сбоем из-за следующего: ошибка:

Код: Выделить всё

Error: Gradle build failed to produce an .apk file.
Проверенные шаги:
  • Обновленная версия Kotlin:
    Обновлены android/build.gradle и android/app/build.gradle для использования Kotlin 1.9.22.

    Код: Выделить всё

    buildscript {
    ext.kotlin_version = "1.9.22"
    }
    
  • Установите явные цели JVM в файлах Gradle:

    Код: Выделить всё

    android {
    compileOptions {
    sourceCompatibility JavaVersion.VERSION_17
    targetCompatibility JavaVersion.VERSION_17
    }
    kotlinOptions {
    jvmTarget = '17'
    apiVersion = '1.9'
    languageVersion = '1.9'
    }
    }
    
  • Принудительные определенные зависимости androidx.work:

    Код: Выделить всё

    configurations.all {
    resolutionStrategy {
    force 'androidx.work:work-runtime:2.8.1'
    force 'androidx.work:work-runtime-ktx:2.8.1'
    force 'androidx.concurrent:concurrent-futures:1.1.0'
    }
    }
    
  • Пробовал разные версии плагина Workmanager:
    Проверено с версией 0.5. 0, 0.5.1 и 0.5.2, но проблема остается.
Соответствующий код:
Инициализация в main.dart

Код: Выделить всё

void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Workmanager().initialize(
callbackDispatcher,
isInDebugMode: true,
);
// ... rest of initialization
}

@pragma('vm:entry-point')
void callbackDispatcher() async {
Workmanager().executeTask((task, inputData) async {
switch (task) {
case WidgetService.WIDGET_UPDATE_TASK:
print('Processing widget update task');
return true;
default:
return false;
}
});
}
Вопрос:
Как решить эту проблему сборки, сохранив при этом функциональность диспетчера работ? Обновления виджетов имеют решающее значение для функциональности моего приложения на обеих платформах.
Буду очень признателен за любую помощь или предложения!

Подробнее здесь: https://stackoverflow.com/questions/793 ... n-conflict
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Flutter Android Build сбой с плагином Workmanager - конфликт с версией Kotlin
    Anonymous » » в форуме Android
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Сборка Visual Studio завершается неудачно, но сборка dotnet с помощью CLI завершается успешно.
    Anonymous » » в форуме C#
    0 Ответы
    44 Просмотры
    Последнее сообщение Anonymous
  • Сборка Visual Studio завершается неудачно, но сборка dotnet с помощью CLI завершается успешно.
    Anonymous » » в форуме C#
    0 Ответы
    35 Просмотры
    Последнее сообщение Anonymous
  • Пользовательский WorkManager WorkManager с контекстом
    Anonymous » » в форуме Android
    0 Ответы
    33 Просмотры
    Последнее сообщение Anonymous
  • Пользовательская инициализация WorkManager жалуется на WorkManager#initialize
    Anonymous » » в форуме JAVA
    0 Ответы
    42 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»