Отладка нативного кода
"Flutter для ОС Аврора" позволяет отлаживать нативный C++-код платформы ОС Аврора с помощью GNU Debugger (GDB) и VS Code.
Для запуска приложения и подключения к нему в режиме отладки нативного кода необходимо выполнить следующие действия:
-
Настроить устройство для работы по инструкции.
-
Перейти в директорию проекта Flutter и создать файл с конфигурациями запуска
.vscode/launch.json, если его ещё нет в проекте:mkdir .vscode && touch .vscode/launch.json -
Выполнить команду запуска приложения с флагом
--enable-aurora-cpp-debug:flutter-aurora run --enable-aurora-cpp-debugФлаг
--enable-aurora-cpp-debugиспользуется только в режиме отладки, запускает GDB сервер на устройстве, используя порт 7014. В результате выполнения команда выведет в консоль конфигурацию запуска для launch.json, GDB сервер будет ожидать подключение для отладки. -
Добавить в файл
.vscode/launch.jsonконфигурацию запуска для подключения к приложению в режиме отладки C++. Конфигурацию можно скопировать из вывода в консоль предыдущей команды или заполнить значения параметров самостоятельно:{ "name": "(gdb) Launch", "type": "cppdbg", "request": "launch", "cwd": "${workspaceFolder}", "program":"${workspaceFolder}/build/aurora/psdk_{PSDK_VERSION}/{TARGET_PLATFORM}/debug/{APP_ID}", "stopAtEntry": false, "launchCompleteCommand": "exec-run", "MIMode": "gdb", "miDebuggerPath": "/usr/bin/{GDB_BINARY}", "miDebuggerServerAddress": "{DEVICE_IP}:7014", "setupCommands": [ { "description": "Enable pretty-printing for GDB", "text": "-enable-pretty-printing", "ignoreFailures": true } ], }PSDK_VERSION— версия установленного Platform SDK (например: 5.1.3.51);TARGET_PLATFORM— целевая платформа (aurora-arm, aurora-arm64, aurora-x64);APP_ID— идентификатор приложения (например: ru.auroraos.app);GDB_BINARY—gdb-multiarchдля Ubuntu илиgdbдля остальных дистрибутивов.DEVICE_IP— IP-адрес устройства (например: 192.168.2.15).
-
В меню запуска и отладки VS Code выбрать добавленную на шаге 3 конфигурацию запуска (gdb) Launch и нажать копку F5 или Run:

После подключения отладчика к процессу отладка нативного кода C++ через VS Code будет доступна. Подробнее инструменты отладки можно изучить в документации VS Code).