Appearance
Flutter SDK
Current version: v1.0.0
Cross-platform Flutter plugin. Uses ExoPlayer on Android and AVPlayer on iOS.
Requirements
- Flutter 3.16 or later
- Dart SDK 3.2 or later
- An active xStreams stream ID and token endpoint
Installation
Add to your pubspec.yaml:
yaml
dependencies:
xstreams_player: ^1.0.0Then run:
bash
flutter pub getUsage
dart
import 'package:xstreams_player/xstreams_player.dart';
class LivePage extends StatefulWidget {
@override
State<LivePage> createState() => _LivePageState();
}
class _LivePageState extends State<LivePage> {
late final XStreamsPlayer _player;
@override
void initState() {
super.initState();
_player = XStreamsPlayer(
config: XStreamsPlayerConfig(
streamId: 'YOUR_STREAM_ID',
tokenEndpoint: 'https://api.yoursite.com/api/v1/ssai/YOUR_STREAM_ID/token/',
streamKey: 'sk_abc123...',
),
);
_player.play();
}
@override
void dispose() {
_player.destroy();
super.dispose();
}
@override
Widget build(BuildContext context) {
return AspectRatio(
aspectRatio: 16 / 9,
child: XStreamsPlayerView(player: _player),
);
}
}Features
- HLS playback on both iOS and Android
- Uses native players (ExoPlayer / AVPlayer) under the hood
- Ad break support
- Fullscreen toggle
- Token management and silent refresh
Manual download
If you prefer not to use pub, download the archive:
https://cdn.xstreams.io/sdk/flutter/xstreams_player-1.0.0.tar.gzSee also
- Android SDK — native Android
- iOS SDK — native iOS
- CDN & Versioning — download links