Оценок пока нет Использование пакетов

Flutter поддерживает использование общих пакетов, предоставленных другими разработчиками для экосистем Flutter и Dart. Это позволяет быстро создать приложение без необходимости разрабатывать все с нуля.

Существующие пакеты включают множество вариантов использования, например, создание сетевых запросов (http), настраиваемая навигация / обработка маршрутов (fluro), интеграция с API-интерфейсами устройств (url_launcher и батарея) и использование SDK сторонних платформ, таких как Firebase (FlutterFire).

Чтобы разработать новый пакет, см. Разработку пакетов. Чтобы добавить ресурсы, изображения или шрифты, х��анящиеся в файлах или пакетах, см. Добавление ресурсов и изображений.

Использование пакетов

В следующем разделе описано, как использовать существующие опубликованные пакеты.

Поиск пакетов

Пакеты публикуются на сайте Pub.

На целевой странице Flutter на сайте Pub отображаются основные пакеты, совместимые с Flutter (те, которые объявляют зависимости, обычно совместимые с Flutter), и поддерживается поиск среди всех опубликованных пакетов.

Добавление зависимости пакета в приложение

Чтобы добавить пакет css_colors в приложение:

  1. Указываем на новую зависимость:
    • Открываем файл pubspec.yaml, расположенный в папке приложения, и добавляем css_colors: в ​​зависимости, указав его в виде значения свойству dependencies.
  2. Устанавливаем его:
    • Из терминала набираем команду flutter pub get.
    • Или, из панели Android Studio/IntelliJ: жмем Packages get в списке действий в верхней части файла pubspec.yaml.
    • Или, из панели VS Code: жмем Get Packages расположен в правой части списка действий в верхней части pubspec.yaml.
  3. Импортируем пакет:
    • Добавляем соответствующий оператор импорта import в коде Dart.
  4. Останавливаем и перезапускаем приложение, если это необходимо
    • Если пакет содержит специфичный для платформы код (Java / Kotlin для Android, Swift / Objective-C для iOS), этот код должен быть встроен в ваше приложение. Горячая перезагрузка и горячий перезапуск обновляют только код Dart, поэтому может потребоваться полный перезапуск приложения, чтобы избежать ошибок, таких как MissingPluginException при использовании пакета.

Вкладка «Установка», доступная на любой странице пакета в Pub, является удобным справочником для этих шагов.

Для полного примера см. Пример css_colors ниже.

Решение конфликта

Предположим, вы хотите использовать в приложении some_package и another_package, и оба они зависят от url_launcher, но в разных версиях. Это вызывает потенциальный конфликт. Лучший способ избежать этого — для авторов пакетов использовать диапазоны версий, а не конкретные версии при указании зависимостей.

dependencies:
  url_launcher: ^0.4.2    # Хорошо, любая 0.4.x версия, где x >= 2 работает.
  image_picker: '0.1.1'   # Это не хорошо, работает только версия 0.1.1.

Если some_package объявляет вышеуказанные зависимости, а another_package объявляет совместимую зависимость url_launcher, такую как «0.4.5» или ^0.4.0, то Pub автоматически решает проблему. Зависимости от платформы для модулей Gradle и/или CocoaPods решаются аналогичным образом.

Пожалуйста, оцените материал

WebSofter

Web - технологии