Lisez une vidéo dans votre application Flutter à l'aide du SDK ApsaraVideo Player. Suivez les étapes ci-dessous pour créer un lecteur, configurer une vue vidéo, définir une source de lecture et libérer les ressources.
Prérequis
Intégrez le SDK Flutter Player à votre projet. Pour obtenir des instructions, consultez Intégration du SDK Flutter Player.
Procédure
Étape 1 : Créer un lecteur
FlutterAliplayer fAliplayer = FlutterAliPlayerFactory.createAliPlayer();
fAliplayer.setTraceID("traceId");
Le paramètre setTraceID gère la journalisation d'instrumentation, qui alimente la surveillance de la qualité de lecture, le suivi ponctuel et les statistiques de lecture vidéo.
**Valeur setTraceID** |
Journalisation d'instrumentation | Fonctionnalités disponibles |
|---|---|---|
| Non définie (par défaut) | Activée | Surveillance de la qualité de lecture, statistiques de lecture vidéo |
| Identifiant unique tel qu'un ID utilisateur, IMEI ou IDFA | Activée | Surveillance de la qualité de lecture, suivi ponctuel, statistiques de lecture vidéo |
DisableAnalytics |
Désactivée | Aucune |
Pour utiliser le suivi ponctuel, transmettez un identifiant unique pour l'utilisateur ou l'appareil, tel que votre ID utilisateur métier, un International Mobile Equipment Identity (IMEI) ou un IDFA (identifier for advertisers).
Étape 2 : Configurer la vue vidéo
Créez un widget AliPlayerView et associez le lecteur une fois la vue créée.
// 1. Create the player view widget
AliPlayerView aliPlayerView = AliPlayerView(
onCreated: onViewPlayerCreated,
x: 0,
y: 0,
width: width,
height: height,
aliPlayerViewType: AliPlayerViewTypeForAndroid.surfaceview);
// 2. Attach the player to the view
void onViewPlayerCreated(viewId) async {
fAliplayer.setPlayerView(viewId);
}
Étape 3 : Définir la source de lecture
Le SDK prend en charge trois types de sources de lecture. Choisissez-en un en fonction de votre cas d'utilisation.
VidAuth (recommandé)
Utilisez VidAuth pour une lecture sécurisée avec un identifiant de lecture éphémère. Appelez l'opération GetVideoPlayAuth d'ApsaraVideo VOD pour obtenir la valeur playAuth.
fAliplayer.setVidAuth(
vid: "<your-video-id>", // Required. The video ID (VideoId).
playAuth: "<your-play-auth>", // Required. The playback credential from GetVideoPlayAuth.
region: "<your-region>", // Required. The region of ApsaraVideo VOD. Default: cn-shanghai.
);
VidSts
Utilisez VidSts pour la lecture avec des identifiants temporaires Security Token Service (STS). Appelez l'opération AssumeRole de STS pour obtenir les valeurs requises.
fAliplayer.setVidSts(
vid: "<your-video-id>", // Required. The video ID (VideoId).
accessKeyId: "<your-access-key-id>", // Required. The AccessKey ID from the temporary AccessKey pair.
accessKeySecret: "<your-access-key-secret>", // Required. The AccessKey secret from the temporary AccessKey pair.
securityToken: "<your-security-token>", // Required. The STS token.
region: "<your-region>", // Required. The region of ApsaraVideo VOD. Default: cn-shanghai.
);
UrlSource
Utilisez UrlSource pour une lecture directe basée sur une URL.
fAliplayer.setUrl("<your-video-url>");
Pour plus de détails sur les sources de lecture, consultez Fonctionnalités de base .
Étape 4 : Démarrer la lecture
fAliplayer.prepare();
fAliplayer.play();
Étape 5 : Libérer le lecteur
Lorsque la lecture est terminée, arrêtez le lecteur, libérez les ressources et effacez la référence pour éviter les fuites de mémoire.
fAliplayer.stop();
fAliplayer.release();
fAliplayer = null; // Prevents memory leaks
Appelez toujoursrelease()et définissez le lecteur surnulllorsqu'il n'est plus nécessaire. Sinon, des fuites de mémoire se produisent.
Exemple complet
L'exemple suivant combine toutes les étapes dans un flux de lecture complet.
// Step 1: Create a player
FlutterAliplayer fAliplayer = FlutterAliPlayerFactory.createAliPlayer();
fAliplayer.setTraceID("traceId");
// Step 2: Set up the video view
AliPlayerView aliPlayerView = AliPlayerView(
onCreated: (viewId) async {
fAliplayer.setPlayerView(viewId);
},
x: 0,
y: 0,
width: width,
height: height,
aliPlayerViewType: AliPlayerViewTypeForAndroid.surfaceview);
// Step 3: Set the playback source (VidAuth)
fAliplayer.setVidAuth(
vid: "<your-video-id>",
playAuth: "<your-play-auth>",
region: "<your-region>",
);
// Step 4: Start playback
fAliplayer.prepare();
fAliplayer.play();
// Step 5: Release the player when done
fAliplayer.stop();
fAliplayer.release();
fAliplayer = null;
Références
Pour le contrôle de la lecture, les écouteurs d'événements et d'autres fonctionnalités du lecteur, consultez Fonctionnalités de base.