flutter_freedome 2.0.0+1 copy "flutter_freedome: ^2.0.0+1" to clipboard
flutter_freedome: ^2.0.0+1 copied to clipboard

Унифицированная Flutter библиотека для интеграции с купольными кинотеатрами FreeDome

Changelog #

2.0.0+1 - 2025-01-27 #

🔄 Обновления зависимостей (2025) #

  • Обновлен socket_io_client до ^3.1.2 для совместимости с современными WebSocket соединениями
  • Обновлены все основные зависимости до версий 2025 года
  • Повышены требования к SDK до >=3.5.0 для использования новых возможностей
  • Обновлен Flutter до >=3.24.0 для поддержки последних фич

🐛 Исправления #

  • Устранены конфликты экспортов между пакетами
  • Исправлены проблемы с дублированными типами DomeSystemType и FreeDomePermission
  • Улучшена совместимость с новыми версиями Flutter SDK

📦 Изменения в зависимостях #

  • Заменены path зависимости на hosted версии для корректной публикации
  • Обновлены dev зависимости для совместимости с новыми версиями

1.0.1 - 2025-09-19 #

🔄 Обновления зависимостей #

  • Обновлен web_socket_channel до ^3.0.3 для совместимости с новыми проектами
  • Обновлен device_info_plus до ^12.1.0 для поддержки последних версий
  • Обновлен connectivity_plus до ^6.0.5 для улучшенной работы с сетью
  • Обновлены HTTP зависимости (dio ^5.4.3, http ^1.2.1)

🐛 Исправления #

  • Устранены конфликты версий зависимостей при интеграции в существующие проекты
  • Улучшена совместимость с Flutter 3.16+

1.0.0 - 2025-09-19 #

🎉 Первый релиз Flutter FreeDome #

✨ Новые возможности

🎭 Гостевой режим
  • Автоматическое обнаружение купольных систем FreeDome в локальной сети
  • Воспроизведение контента любых Flutter приложений на купольном экране
  • Базовые настройки громкости и яркости проекции
  • Простой API для быстрой интеграции: FlutterFreeDome.quickPlay()
  • Готовые UI виджеты для управления подключением и воспроизведением
🔧 Режим администратора
  • Система аутентификации с поддержкой ролей (Guest, Operator, Admin, Superadmin)
  • Полная калибровка аудио и видео систем
  • Управление проекторами с настройкой яркости, контрастности и выравнивания
  • Калибровка аудиоканалов с поддержкой микрофонов и Room EQ Wizard
  • Системное администрирование с мониторингом метрик и диагностикой
  • Поддержка вендоров (Digistar, DomeMaster, IMAX Dome)
🏗️ Архитектура и API
  • Модульная структура с разделением на core, guest и admin модули
  • FreeDomeProvider - главная точка входа с Provider pattern
  • ConnectionService - управление подключениями и обнаружением систем
  • AuthService - аутентификация и управление ролями
  • ContentService - управление библиотекой контента и воспроизведением
  • CalibrationService - сервис калибровки (только для администраторов)
  • SystemService - системное управление (только для администраторов)
📱 Готовые виджеты
  • FreeDomeConnectionWidget - управление подключением к куполам
  • FreeDomeContentPlayer - плеер контента с элементами управления
  • FreeDomeStatusIndicator - индикатор статуса подключения
  • FreeDomeDetailedStatus - подробная информация о системе
🎯 Поддержка контента
  • Интерактивный контент от Flutter приложений
  • Контент в реальном времени (streaming, WebRTC)
  • Множественные форматы проекции (Equirectangular, Fisheye, Fulldome, Cubemap)
  • Библиотека контента с поиском и управлением
  • Плейлисты с поддержкой различных режимов воспроизведения
🔒 Безопасность
  • Система разрешений с детальным контролем доступа
  • Безопасное хранение токенов в FlutterSecureStorage
  • JWT аутентификация с хэшированием паролей
  • Сессии с автоматическим продлением и логированием
🌐 Поддержка платформ
  • ✅ Android (API 21+)
  • ✅ iOS (iOS 11.0+)
  • ✅ Web (Chrome, Firefox, Safari)
  • ✅ Windows (Windows 10+)
  • ✅ macOS (macOS 10.14+)
  • ✅ Linux (Ubuntu 18.04+)
🛠️ Инфраструктура
  • Автоматическая генерация кода с Freezed и JsonSerializable
  • Comprehensive testing с unit и integration тестами
  • Подробная документация с примерами использования
  • Пример приложения демонстрирующий все возможности

📦 Зависимости

Основные зависимости
  • flutter: >=3.10.0
  • provider: ^6.1.1 - State management
  • dio: ^5.4.0 - HTTP клиент
  • socket_io_client: ^2.0.3+1 - WebSocket соединения
  • shared_preferences: ^2.2.2 - Локальное хранение настроек
  • flutter_secure_storage: ^9.0.0 - Безопасное хранение токенов
  • connectivity_plus: ^5.0.2 - Мониторинг сетевого подключения
Дополнительные зависимости
  • isar: ^3.1.0+1 - Современная локальная база данных
  • sqflite: ^2.3.0 - SQLite для структурированных данных
  • sensors_plus: ^4.0.2 - Доступ к датчикам устройства
  • just_audio: ^0.9.37 - Аудио воспроизведение
  • permission_handler: ^11.3.0 - Управление разрешениями
  • device_info_plus: ^10.1.0 - Информация об устройстве
Dev зависимости
  • build_runner: ^2.4.7 - Генерация кода
  • freezed: ^2.4.6 - Immutable классы
  • json_serializable: ^6.7.1 - JSON сериализация
  • mockito: ^5.4.4 - Мокирование для тестов

🎯 Примеры использования

Быстрый старт
// Самый простой способ
await FlutterFreeDome.quickPlay(
  appName: 'MyApp',
  contentName: 'Мой контент',
  appData: {'type': 'visualization'},
);
Полная интеграция
// Инициализация
final freedome = FreeDomeProvider();
await freedome.initialize();

// Подключение к куполу
await freedome.connectToNearestDome();

// Воспроизведение контента
await freedome.playAppContent(
  appName: 'StarrySkr',
  contentName: 'Звездное небо',
  appData: {'type': 'starfield'},
);
Административный режим
// Аутентификация
await freedome.authenticateAsAdmin(
  username: 'admin',
  password: 'password',
);

// Калибровка аудио
await freedome.calibration?.startAudioCalibration();

// Системная диагностика
final health = await freedome.system?.getSystemHealth();

📋 Системные требования

Минимальные
  • Flutter 3.10.0+
  • Dart 3.0.0+
  • FreeDome Core 2.0+
Рекомендуемые
  • Flutter 3.16.0+
  • Dart 3.2.0+
  • FreeDome Core 2.5+

🔄 Миграция

Это первый релиз библиотеки, миграция не требуется.

🐛 Известные проблемы

  • Калибровка проекторов может занимать до 30 минут для полного цикла
  • WebSocket соединения могут требовать переподключения после длительного бездействия
  • Некоторые старые версии FreeDome Core (< 2.0) могут иметь ограниченную совместимость

🙏 Благодарности

Спасибо всем, кто помогал в разработке первой версии:

  • Команде FreeDome за техническую поддержку API
  • Flutter сообществу за отличные библиотеки
  • Бета-тестерам за обратную связь

Полная документация: https://pub.dev/packages/flutter_freedome Исходный код: https://github.com/nativemind/flutter_freedome Поддержка: support@nativemind.ru