Files
Hiroshi Horie da801a918d Fix meta package import errors (#981)
fix: use explicit imports to prevent missing meta annotations on some
Flutter versions

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Refactored import statements throughout the codebase from broad
imports with hide directives to explicit symbol declarations using show
clauses. This improves code clarity, reduces unnecessary symbol
exposure, and enhances maintainability.
* Consolidated imports to leverage specialized packages for improved
code organization.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-02-06 14:59:19 +09:00
..
2025-08-27 20:59:08 +08:00
2025-12-12 18:57:51 +09:00
2026-02-06 14:59:19 +09:00
2025-07-25 19:19:30 +08:00
2025-12-12 18:57:51 +09:00
2023-02-06 12:48:11 +09:00
2021-08-04 11:33:06 -07:00
2025-02-23 10:59:28 +08:00

LiveKit Flutter Example

This app implements a video room using LiveKit's Flutter SDK. Designed to run for iOS, Android, Web, Mac, and Windows.

Quickstart

Run example:

flutter pub get
# Due to the inconvenience of typing on mobile devices, 
# you can autofill URL and TOKEN for first run in debug mode.
flutter run --dart-define=URL=wss://${LIVEKIT_SERVER_IP_OR_DOMAIN} --dart-define=TOKEN=${YOUR_TOKEN}

End-to-End Encryption (E2EE)

The example app supports end-to-end encryption for audio and video tracks. To enable E2EE:

  1. Toggle the "E2EE" switch in the connect screen
  2. Enter a shared key that will be used for encryption
  3. All participants must use the same shared key to communicate

For web support, you'll need to compile the E2EE web worker:

dart compile js web/e2ee.worker.dart -o example/web/e2ee.worker.dart.js -m

Note: All participants in the room must have E2EE enabled and use the same shared key to see and hear each other. If the keys don't match, participants won't be able to decode each other's audio and video.