Comment conserver l’affichage lors de la lecture audio/vidéo (HTML)
[ Cet article est destiné aux développeurs Windows 8.x et Windows Phone 8.x qui créent des applications Windows Runtime. Si vous développez une application pour Windows 10, voir la Documentation ]
Découvrez comment conserver l’affichage lors de la lecture d’une vidéo en local ou diffusée en continu à l’aide de la classe DisplayRequest. Normalement, un appareil exécutant une application Windows Runtime estompe l’affichage (et finit par le désactiver) pour préserver l’autonomie de la batterie lorsque l’utilisateur s’absente, mais les applications vidéo doivent maintenir l’écran allumé pour que l’utilisateur puisse voir la vidéo. La classe DisplayRequest vous permet d’indiquer à Windows de laisser l’affichage activé pour permettre à l’utilisateur de voir la vidéo.
Ce que vous devez savoir
Technologies
Prérequis
- Cette rubrique montre comment ajouter du code à une application multimédia existante. En particulier, votre application doit disposer de code pour les gestionnaires d’événements de lecteur vidéo. . Pour plus d’informations sur la création d’applications audio et vidéo, voir Démarrage rapide : lecture de vidéos dans une application et Démarrage rapide : utilisation de la fonctionnalité Lire sur dans les applications.
Instructions
Étape 1: Créer un objet DisplayRequest
Créez une variable DisplayRequest globale. Initialisez-la sur la valeur Null.
// Create this variable at a global scope.
var dispRequest = null;
Étape 2: Activer l’objet DisplayRequest juste avant le démarrage de la lecture vidéo
Appelez requestActive pour signaler à Windows que l’application requiert que l’affichage reste activé.
L’exemple suivant active la demande avant le démarrage de la lecture vidéo :
function startVideoPlayback() {
if (dispRequest === null) {
// Activate a display-required request. If successful, the screen is
// guaranteed not to turn off automatically due to user inactivity.
dispRequest = new Windows.System.Display.DisplayRequest;
dispRequest.requestActive();
WinJS.log && WinJS.log("Display request activated",
"sample",
"status");
// Insert your own code here to start the video.
}
}
Étape 3: Désactiver l’objet DisplayRequest quand la lecture vidéo s’arrête ou est suspendue
Appelez requestRelease pour supprimer la demande d’affichage chaque fois que la lecture vidéo est arrêtée, suspendue ou interrompue par une erreur de lecture. Lorsque votre application n’a plus de demandes d’affichage actives, Windows préserve l’autonomie de la batterie en estompant l’affichage (et finit par le désactiver) lorsque le périphérique n’est pas utilisé.
L’exemple suivant désactive la demande :
function stopVideoPlayback() {
// Insert your own code here to stop the video.
if (dispRequest != null) {
// Deactivate the display request and set the var to null.
dispRequest.requestRelease();
dispRequest = null;
WinJS.log && WinJS.log("Display request released",
"sample",
"status");
}
}
Remarques
Remarque Windows désactive automatiquement les demandes d’affichage actives de votre application lorsque cette dernière n’est plus à l’écran, et les réactive quand votre application revient au premier plan.
Vous pouvez également utiliser cette API pour maintenir votre écran allumé pendant la transmission d’indications dans une application GPS. Dans ce cas, remplacez les événements de lecture vidéo par des événements de navigation.
Pour afficher un code similaire dans le contexte de fonctions, téléchargez l’exemple d’affichage de l’état de l’alimentation.
Rubriques associées
Démarrage rapide : lecture de vidéos dans une application du Windows Store