Skip to content

Flexberry/Flexberry.Flutter.Sample

Repository files navigation

Flexberry.Flutter.Sample

О тестовом приложении

Flutter — комплект средств разработки и фреймворк с открытым исходным кодом для создания мобильных приложений под Android и iOS, веб-приложений, а также настольных приложений под Windows, macOS и Linux с использованием языка программирования Dart, разработанный и развиваемый корпорацией Google.

Реализован пример, включающий в себя:

  • Работу с бэкендом (ODataService).
  • Форму редактирования данных
  • Списковую форму
  • Навигацию

Необходимые инструменты

  • IDE (лучше всего Visual Studio Code)
  • Flutter SDK
  • Flutter plugin для Visual Studio Code (соответствующие плагины есть также для Android Studio и IntelliJ IDEA)
  • ПО в соответствии с выбранной платформой разработки:
    • Visual Studio для платформы Windows
    • Xcode для платформы macOS
    • Android SDK для android
    • Chrome для web

Tip

Проверить, установлено ли все необходимое: flutter doctor -v

Note

Установить пакеты: flutter pub get

Более подробную информацию можно посмотреть в официальной документации или наглядно увидеть в туториале.

Ответы на вопросы, которые прозвучали на Disconf mini:

  • В чем измеряются размеры элементов:

    В логических пикселях. Логические пиксели это не то же самое что dp (device-independent pixels). Логические пиксели (LP) - это абстрактная единица измерения, которая не привязана к физическому размеру пикселей на экране устройства. dp (device-independent pixels) - это единица измерения, используемая на Android платформе. Один "dp" равен одному логическому пикселю при разрешении экрана 160 точек на дюйм (dpi). На экранах с более высоким или более низким разрешением количество физических пикселей на один "dp" будет отличаться, чтобы сохранить визуальный размер элементов на разных устройствах. В Flutter вы обычно работаете с логическими пикселями, а не с "dp". Flutter автоматически масштабирует элементы пользовательского интерфейса в соответствии с плотностью пикселей экрана устройства. Но так же есть возможность задавать размеры и в dp и в px.

  • Чуть подробнее про сгенерированные модели:

    На основе спецификации OpenAPI библиотека openapi_generator генерирует классы-модели для всех сущностей, которые используются в API. Это позволяет не писать их вручную, а сразу использовать готовые объекты. Библиотека также генерирует код для API-клиентов, которые позволяют взаимодействовать с бэкендом. Эти клиенты содержат методы для выполнения различных HTTP-запросов (GET, POST, PUT, DELETE). Сгенерированные модели и клиенты API типизированы.

  • Про результат компиляции:

    Компиляция приложения Flutter приводит к созданию исполняемого файла или APK (Android Package), который может быть установлен на мобильное устройство или эмулятор. Этот процесс включает в себя преобразование вашего исходного кода Dart в машинный код, который может выполняться на устройстве. В случае iOS, это будет файл приложения (.app), который затем можно скомпилировать в IPA (iOS App Store Package) с помощью Xcode. В случае Android, это будет APK, который можно установить напрямую или загрузить в Google Play Store.