Как отлаживать нативный Android, вызванный из Flutter Pllatform Channel

Кажется, я не могу понять, как заставить работать отладку для собственного модуля Android, вызываемого из приложения Flutter через канал платформы. Я использую образец из документации Flutter (https://flutter.dev/docs/development/platform-integration/platform-channels). Я пробовал следующее:

  1. Откройте проект Flutter в IntelliJ
  2. Щелкните правой кнопкой мыши папку Android и выберите Flutter | Откройте Android-модуль в Android Studio
  3. Android Studio открывает собственный код Android.
  4. Установите точки останова в коде Android
  5. Нажмите Отладка из Android Studio.
  6. Эмулятор показывает "Ожидание приложения отладчика, ожидающего подключения deubgger", в то время как в Android Studio консоль отладки показывает "Подключено к целевой виртуальной машине, адрес: 'localhost:8601'"
  7. Запустите приложение Flutter из IntelliJ (я также пробовал отладку из IntelliJ - код флаттера останавливается на точках останова)
  8. Точки останова для собственного кода Android никогда не ломаются

Что я делаю неправильно?

3 ответа

Я начал другой проект и смог заставить его работать.

Чтобы отладить код Flutter, запустите отладчик из IntelliJ

Чтобы отладить собственный код Android, щелкните правой кнопкой мыши папку Android и выберите Flutter | Откройте Android-модуль в Android Studio. Запустите отладчик там. Приложение Flutter откроется в эмуляторе, и вы можете устанавливать / нажимать точки останова в собственном коде.

Что сработало для меня, так это запустить приложение в режиме отладки в Android Studio, а затем нажать кнопку «Прикрепить отладчик к процессу Android».

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

import '../app.dart';

Измените эти утверждения на

import 'package:your_package/app.dart';

После этого отладчик заработает. При трепете - хорошая привычка импортировать операторы таким образом.

Другие вопросы по тегам