AutoPlay pour les applications de périphérique UWP

Les fabricants d’appareils peuvent spécifier leur application d’appareil UWP comme gestionnaire AutoPlay pour leur appareil. Ils peuvent également permettre à d’autres applications UWP d’agir en tant que gestionnaires AutoPlay pour leur appareil. Cette rubrique explique comment utiliser l’Assistant de création de métadonnées de périphérique pour activer AutoPlay. Elle explique également comment gérer les activations AutoPlay dans votre application.AutoPlay pour les applications d’appareils UWP Pour plus d’informations sur les applications d’appareils, veuillez consulter la rubrique Découvrez les applications d’appareils UWP.

Remarque

Vous n’avez pas besoin d’utiliser des métadonnées de périphérique pour tous les types d’AutoPlay. Sans métadonnées de périphérique, AutoPlay vous permet de proposer votre application comme option lorsque l’utilisateur connecte un appareil à un PC. Cela inclut les périphériques non volumineux tels qu’un appareil photo ou un lecteur multimédia, ou les périphériques volumineux tels qu’une clé USB, une carte SD ou un DVD. AutoPlay vous permet également d’enregistrer votre application comme option lorsque les utilisateurs partagent des fichiers entre deux machines en utilisant Proximité (tapping). Mais votre application ne peut pas s’installer automatiquement sans métadonnées de périphérique. Pour plus d’informations concernant l’utilisation d’AutoPlay lorsque les métadonnées de l’appareil ne sont pas requises, veuillez consulter la section Démarrage automatique avec AutoPlay.

Vue d’ensemble d’AutoPlay

En fonction de la version de votre application, vous pouvez activer AutoPlay de différentes manières :

  • Seule votre application d’appareil UWP peut gérer l’activation AutoPlay pour votre appareil (pris en charge dans Windows 8, Windows 8.1).

  • D’autres applications UWP peuvent gérer l’activation AutoPlay pour votre appareil (pris en charge dans Windows 8.1 uniquement).

  • Votre application d’appareil UWP et d’autres applications UWP peuvent gérer l’activation AutoPlay pour votre appareil (pris en charge dans Windows 8.1 uniquement).

Cet exemple montre une boîte de dialogue AutoPlay pour une application nommée Tableau de bord Contoso qui s’est enregistrée en tant que gestionnaire AutoPlay pour l’appareil Podomètre Contoso :

example autoplay dialog for a device.

Lorsque vous utilisez des métadonnées d’appareil avec votre application, AutoPlay prend en charge les types d’appareils suivants :

Classe d’appareil AutoPlay pris en charge dans Windows 8 AutoPlay pris en charge dans Windows 8.1
Appareil photo numérique autoplay is supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
Caméscope vidéo numérique autoplay is supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
Lecteur multimédia portable autoplay is supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
Téléphone portable autoplay is supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
Haut débit mobile autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1
Webcam autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1
Interface Homme-machine (HID) autoplay is not supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
Imprimantes, scanners, fax autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1
PC autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1
Carte à puce autoplay is not supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
Port général autoplay is not supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
Appareil Bluetooth autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1

Avant de commencer

Activation de AutoPlay

L’Assistant Création de métadonnées d’appareil vous permet de déclarer votre application UWP comme gestionnaire AutoPlay par défaut pour votre appareil. Vous pouvez également permettre à d’autres applications UWP d’agir en tant que gestionnaires AutoPlay pour votre appareil. Vous pouvez choisir entre ces options ou opter pour les deux.

Pour activer AutoPlay avec l’Assistant de création de métadonnées de périphérique**

  1. Lancez l’Assistant de création de métadonnées de périphérique depuis %ProgramFiles(x86)%\Windows Kits\8.1\bin\x86, en double-cliquant sur DeviceMetadataWizard.exe.

  2. Cliquez sur Éditer les métadonnées de périphérique. Cela vous permettra d’éditer votre package de métadonnées de périphérique existant.

  3. Dans la boîte de dialogue Ouvrir, localisez le package de métadonnées de périphérique associé à votre application UWP pour périphérique. (Il a une extension de fichier devicemetadata-ms).

  4. (Facultatif.) Si vous n’avez pas les informations d’emballage de votre application d’appareil, telles que le nom du package, le nom de l’éditeur et l’ID de l’application, cliquez sur App Info pour afficher les informations d’emballage de votre application d’appareil UWP.

  5. Cliquez sur Windows Info pour spécifier les détails d’AutoPlay.

  6. Si vous souhaitez spécifier une application pour être le gestionnaire AutoPlay par défaut pour votre appareil, sélectionnez Utiliser une application d’appareil UWP. Vous pouvez sélectionner n’importe quelle application UWP ou application d’appareil UWP, mais cette application doit gérer l’activation de AutoPlay pour votre appareil et spécifier l’Identifiant d’expérience correspondant dans le manifeste du package d’application (comme spécifié dans la procédure suivante).

    • Nom du package : dans le manifeste du package d’application, il s’agit de l’attribut Name de l’élément Identity.

    • Nom de l’éditeur : dans le manifeste du package d’application, il s’agit de l’attribut Publisher de l’élément Identity.

    • ID d’application : dans le manifeste du package d’application, il s’agit de l’attribut ID de l’élément Application.

    • Verb : il s’agit de l’identificateur pour l’activation de AutoPlay. Votre application l’utilisera pour déterminer si l’activation provient de votre appareil. Vous pouvez attribuer n’importe quelle valeur au paramètre Verbe, sauf open qui est réservée.

    • Type d’événement AutoPlay : laissez cela en Appareil/Périphérique. Dans les métadonnées de l’appareil, l’Assistant spécifie automatiquement l’Identifiant d’expérience associé à votre application d’appareil UWP.

  7. Si vous souhaitez laisser d’autres applications agir en tant que gestionnaires AutoPlay pour votre appareil, sélectionnez Activer AutoPlay pour les applications enregistrées.

  8. Quand vous avez terminé, cliquez sur Suivant.

  9. Lorsque vous arrivez à la page Terminer, notez l’ID de l’expérience. Vous en aurez besoin dans la procédure suivante, lorsque vous gérez l’activation de lecture automatique dans votre application.

  10. Vérifiez vos informations enregistrées et cliquez sur Enregistrer pour mettre à jour votre package de métadonnées de périphérique.

Gestion de l’activation AutoPlay

Pour gérer une activation AutoPlay dans votre application, vous devez vous inscrire à une extension windows.autoPlayDevice dans le manifeste du package de l’application, puis gérer cet événement dans le gestionnaire d’événements OnActivated de l’objet Application. Notez que votre application peut s’inscrire en tant que gestionnaire AutoPlay pour plusieurs appareils.

Pour enregistrer votre application en tant que gestionnaire AutoPlay

Pour enregistrer votre application en tant que gestionnaire AutoPlay pour votre appareil, vous devez spécifier l’ID de l’expérience associé à votre application d’appareil UWP et le Verb AutoPlay et ActionDisplayName qui seront utilisés pour activer votre application.

  1. Ouvrez votre projet d’application dans Visual Studio.

  2. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le fichier Package.appxmanifest et sélectionnez Voir le Code. Cela affiche le manifeste du package d’application dans l’éditeur XML (texte).

  3. Dans l’élément Application , sous l’élément VisualElements , collez l’élément Extensions suivant dans votre fichier manifeste de package.

          <Extensions>
            <Extension Category="windows.autoPlayDevice">
              <AutoPlayDevice>
                <LaunchAction
                    Verb="showDevice1"
                    ActionDisplayName="Launch App for Device 1"
                    DeviceEvent="ExperienceID:{00000000-ABCD-EF00-0000-000000000000}"/>
              </AutoPlayDevice>
            </Extension>
          </Extensions>
    
  4. Remplacez les valeurs de AutoPlay de cet exemple par les valeurs réelles de votre application :

    • Verb : il s’agit de l’identificateur pour l’activation de AutoPlay. Votre application l’utilisera pour déterminer si l’activation provient de votre appareil. Si votre application a été spécifiée comme gestionnaire AutoPlay par défaut pour votre appareil, cette valeur doit correspondre au Verb que vous avez spécifié dans les métadonnées de l’appareil. Si votre application n’a pas été spécifiée comme gestionnaire AutoPlay par défaut pour votre appareil, vous pouvez utiliser n’importe quelle valeur pour le paramètre Verbe, à l’exception de open, qui est réservée.

    • ActionDisplayName: La chaîne qui s’affiche automatiquement pour votre application.

    • Experience ID: GUID d’ID d’expérience qui associe votre application à votre appareil. Il s’agit de la valeur que vous avez noté dans la procédure précédente.

Pour gérer l’activation AutoPlay

Lorsque votre appareil déclenche une activation AutoPlay, le type d’activation sera Windows.ApplicationModel.Activation.ActivationKind.device. Utilisez l’objet eventObj passé par l’événement OnActivated pour vérifier comment votre application a été activée. S’il s’agissait d’AutoPlay, vous pouvez utiliser eventObj pour déterminer quel identifiant de périphérique et verbe AutoPlay ont causé l’activation.

Dans cet exemple, le paramètre d’événement d’activation (eventObj) porte l’ID de l’appareil ainsi que le verbe pour l’activation.

<!DOCTYPE html>
<html>
<head>
  <script type="text/javascript">
    function OnActivated(eventObj) {
        if (eventObj.kind == Windows.ApplicationModel.Activation.ActivationKind.launch) {
            // Activated by the user.
        }
        else if (eventObj.kind == Windows.ApplicationModel.Activation.ActivationKind.device) {
            // Activated by a device, for AutoPlay.
            // Device path = eventObj.deviceInformationId;
            // verb ("showDevice1") = eventObj.verb;
        }
    }

    Windows.UI.WebUI.WebUIApplication.addEventListener("activated", OnActivated, false);
  </script>
</head>

<body>
...
...
...
</body>
</html>

Découverte des applications de périphérique UWP

Développer une application UWP pour périphériques étape par étape

Démarrage automatique avec lecture automatique

Launching, resuming, and multitasking