Flutter не запускается в режиме отладки

Вопрос или проблема

Когда я запускаю проект Flutter без режима отладки, все нормально и он открывается, но когда я пытаюсь запустить его в режиме отладки, он зависает и не открывается на виртуальном устройстве. Это странно, логи ниже:

Подключение к VM Service по адресу ws://127.0.0.1:54937/_bRt9qNAo2E=/wsПодключено к VM Service.D/ProfileInstaller( 3872): Установка профиля для com.example.lotus_pilatesE/flutter ( 3872): [ERROR:flutter/runtime/dart_vm_initializer.cc(40)] Неперехваченное исключение: PlatformException(invalid_icon, Ресурс app_icon не найден. Пожалуйста, убедитесь, что он добавлен как ресурс drawable в ваш проект Android., null, null)E/flutter ( 3872): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:646:7)E/flutter ( 3872): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:334:18)E/flutter ( 3872): <асинхронная приостановка>E/flutter ( 3872): #2      AndroidFlutterLocalNotificationsPlugin.initialize (package:flutter_local_notifications/src/platform_flutter_local_notifications.dart:143:12)E/flutter ( 3872): <асинхронная приостановка>E/flutter ( 3872):W/FlutterJNI( 3872): Метод FlutterJNI.loadLibrary вызван более одного разаI/ResourceExtractor( 3872): Найдены извлеченные ресурсы res_timestamp-1-1728163301184W/FlutterJNI( 3872): Метод FlutterJNI.prefetchDefaultFontManager вызван более одного разаW/FlutterJNI( 3872): Метод FlutterJNI.init вызван более одного разаI/FLTFireBGExecutor( 3872): Создание фона экземпляра FlutterEngine с аргументами: [--start-paused, --enable-dart-profiling]I/FLTFireMsgService( 3872): Служба фоновоого сообщения FlutterFirebaseMessaging начала работу!

Может кто-нибудь помочь мне решить эту проблему?

Ответ или решение

Проблема, с которой вы столкнулись, связана с тем, что ваше приложение Flutter не может найти ресурс app_icon при запуске в режиме отладки. Это может быть вызвано тем, что иконка приложения не была добавлена в проект Android должным образом, или же возникли проблемы с инициализацией плагина. Давайте разберемся, как решить эту проблему шаг за шагом.

Шаги по устранению проблемы:

  1. Проверьте ресурсы иконки приложения:

    • Убедитесь, что файл иконки приложения (app_icon) добавлен в директорию android/app/src/main/res/drawable-<density> своей Android-части проекта. Обычно иконка приложения должна быть в нескольких размерах, чтобы соответствовать различным плотностям экранов (mdpi, hdpi, xhdpi и т.д.).
    • Убедитесь, что файл называется именно так, как указано в вашем AndroidManifest.xml (обычно это @mipmap/ic_launcher или @drawable/app_icon в зависимости от вашей конфигурации).
  2. Обновите AndroidManifest.xml:

    • Проверьте файл android/app/src/main/AndroidManifest.xml на наличие правильной ссылки на иконку приложения. Например:
      <application
       android:icon="@mipmap/ic_launcher"
       ...
      >
  3. Очистите и пересоберите проект:

    • Выполните команду в терминале для очистки проекта:
      flutter clean
    • Затем пересоберите проект:
      flutter pub get
      flutter run
  4. Проверка зависимостей:

    • В логах видно, что ошибка связана с плагином flutter_local_notifications. Убедитесь, что все зависимости в вашем pubspec.yaml корректны и обновлены. Вы можете также попробовать удалить и заново добавить плагин:
      dependencies:
      flutter_local_notifications: ^x.y.z  # Убедитесь, что используете последнюю стабильную версию
  5. Проверка режима отладки:

    • Убедитесь, что нет конфликтующих режимов или антивирусных программ, которые могут блокировать вашу отладочную сессию.
    • Попробуйте перезапустить эмулятор и сам Flutter, чтобы исключить возможные временные сбои.
  6. Логи и отладка:

    • Если ошибка сохраняется, внимательно изучите логи и попробуйте изолировать проблему, добавляя или удаляя зависимости, чтобы проверить, не вызывает ли проблема какой-либо конкретный плагин.

Если выполненные шаги не решили проблему, рекомендуется создать новое приложение Flutter с помощью команды flutter create, чтобы проверить, воспроизводится ли ошибка в новом проекте. Если новое приложение запускается в режиме отладки, проблема может быть связана с вашим конкретным проектом.

Надеюсь, эти рекомендации помогут вам решить вашу проблему! Если у вас возникнут дополнительные вопросы, пожалуйста, не стесняйтесь обращаться.

Оцените материал
Добавить комментарий

Капча загружается...