Partager via


AutoPlay pour les applications de périphérique UWP

Important

Les métadonnées de l’appareil sont déconseillées et seront supprimées dans une version ultérieure de Windows. Pour plus d’informations sur le remplacement de cette fonctionnalité, consultez Métadonnées du conteneur de package de pilotes.

Les fabricants d’appareils peuvent spécifier leur application d’appareil UWP en tant que gestionnaire de lecture automatique pour leur appareil. Ils peuvent également permettre à d’autres applications UWP d’agir en tant que gestionnaires de lecture automatique pour leur appareil. Cet article explique comment utiliser l’Assistant Création de métadonnées d’appareil pour activer l’exécution automatique. Il décrit également comment gérer les activations AutoPlay dans votre application. Pour plus d’informations sur les applications d’appareil, consultez Meet UWP device apps.

Vous n’avez pas besoin d’utiliser les métadonnées d’appareil pour tous les types d’exécution automatique. Sans métadonnées d’appareil, AutoPlay vous permet de proposer votre application en tant qu'option lorsqu'un utilisateur connecte un appareil à un PC. Ces appareils ne sont pas des appareilsvolumes tels qu’un appareil photo ou un lecteur multimédia, ou des périphériques de volume tels qu’un lecteur USB, une carte SD ou un DVD. La lecture automatique vous permet également d’inscrire votre application en tant qu’option lorsque les utilisateurs partagent des fichiers entre deux ordinateurs à l’aide de la fonction Proximité en les tapant. Mais votre application ne peut pas s’installer automatiquement sans métadonnées d’appareil. Pour plus d’informations sur l’utilisation de la lecture automatique lorsque les métadonnées de l’appareil ne sont pas requises, consultez Démarrage automatique avec lecture automatique.

Vue d’ensemble d’AutoPlay

Selon la version de votre application, vous pouvez activer la lecture automatique de ces manières :

  • Seule votre application d’appareil UWP peut gérer l’activation d'AutoPlay pour le vôtre (prise en charge dans Windows 8, Windows 8.1).
  • D'autres applications UWP peuvent gérer l'activation d'AutoPlay pour votre appareil (prise en charge uniquement sous Windows 8.1).
  • Votre application d’appareil UWP et d’autres applications UWP peuvent gérer l’activation de lecture automatique pour votre appareil (prise en charge uniquement dans Windows 8.1).

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

Exemple de fenêtre de dialogue de lecture automatique pour un appareil.

AutoPlay prend en charge ces types d’appareils lors de l’utilisation de métadonnées de périphérique avec votre application :

Classe d’appareil La fonctionnalité AutoPlay est prise en charge dans Windows 8. La lecture automatique est prise en charge dans Windows 8.1.
Appareil photo numérique la lecture automatique est prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique est prise en charge pour cette classe d’appareil dans windows 8.1
Camcorder vidéo numérique la lecture automatique est prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique est prise en charge pour cette classe d’appareil dans windows 8.1
Lecteur multimédia portable la lecture automatique est prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique est prise en charge pour cette classe d’appareil dans windows 8.1
Téléphone portable la lecture automatique est prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique est prise en charge pour cette classe d’appareil dans windows 8.1
Haut débit mobile la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans windows 8.1
Webcam la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans windows 8.1
Périphérique d’interface humaine (HID) la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique est prise en charge pour cette classe d’appareil dans windows 8.1
Imprimantes, scanneurs, télécopie la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans windows 8.1
PC la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans windows 8.1
Carte à puce la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique est prise en charge pour cette classe d’appareil dans windows 8.1
Port général la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique est prise en charge pour cette classe d’appareil dans windows 8.1
Appareil Bluetooth la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans Windows 8. la lecture automatique n’est pas prise en charge pour cette classe d’appareil dans windows 8.1

Avant de commencer

Activation d'AutoPlay

L’Assistant de création de métadonnées d'appareil vous permet de déclarer votre application UWP comme gestionnaire par défaut de Lecture automatique pour votre appareil. Vous pouvez également autoriser d’autres applications UWP à agir en tant que gestionnaires de lecture automatique pour votre appareil. Vous pouvez choisir l’une ou l’autre de ces options ou les deux.

Pour activer la Lecture automatique avec l’Assistant Création de métadonnées d’appareil**

  1. Démarrez l’Assistant de création de métadonnées d’appareil à partir de %ProgramFiles(x86)%\Windows Kits\8.1\bin\x86, en double-cliquant sur DeviceMetadataWizard.exe.

  2. Pour modifier votre package de métadonnées d’appareil existant, sélectionnez Modifier les métadonnées de l’appareil.

  3. Dans la boîte de dialogue Ouvrir , recherchez le package de métadonnées de l’appareil associé à votre application d’appareil UWP. (Il a une extension de fichier devicemetadata-ms .)

  4. (Facultatif.) Si vous n’avez pas le nom du package de votre application d’appareil, le nom du serveur de publication et l’ID d’application pratique, sélectionnez Informations d’application pour afficher les informations d’empaquetage de votre application d’appareil UWP.

  5. Sélectionnez Informations Windows pour spécifier les détails de la lecture automatique.

  6. Si vous souhaitez spécifier une application comme gestionnaire de lecture automatique 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. Toutefois, cette application doit gérer l'activation AutoPlay pour votre appareil. L’application doit également spécifier l’ID 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, le nom du package est l’attribut Name de l’élément Identity.

    • Nom de l’éditeur : dans le manifeste du package d’application, le nom du serveur de publication est l’attribut Publisher de l’élément Identity.

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

    • Verbe : Verbe est l'identificateur de l'activation d'AutoPlay. Votre application l’utilise pour déterminer si l’activation provient de votre appareil. Vous pouvez utiliser n’importe quelle valeur pour le paramètre du verbe, à l’exception de open, qui est réservée.

    • Type d’événement De lecture automatique : laissez ce champ défini sur Appareil. Dans les métadonnées de l’appareil, l’Assistant spécifie automatiquement l’ID d’expérience associé à votre application d’appareil UWP.

  7. Si vous souhaitez autoriser d’autres applications à agir en tant que gestionnaires de lecture automatique pour votre appareil, sélectionnez Activer la lecture automatique pour les applications inscrites.

  8. Lorsque vous avez terminé, sélectionnez Suivant.

  9. Lorsque vous voyez la page Terminer, notez l’ID de l’expérience. Vous en aurez besoin dans la procédure suivante, lorsque vous manipulez l'activation d'AutoPlay dans votre application.

  10. Vérifiez vos informations d’enregistrement et sélectionnez Enregistrer pour mettre à jour votre package de métadonnées d’appareil.

Gestion de l’activation de la lecture automatique

Pour gérer une activation d'AutoPlay dans votre application, inscrivez une extension dans le manifeste du package de l'application. Ensuite, gérez cet événement dans l'événement OnActivated de l’objet Application. Votre application peut s’inscrire en tant que gestionnaire de lecture automatique pour plusieurs appareils.

Pour enregistrer votre application en tant que gestionnaire AutoPlay

Pour inscrire votre application en tant que gestionnaire de lecture automatique pour votre appareil, spécifiez l’ID d’expérience associé à votre application UWP pour appareil, le verbe de lecture automatique et NomD'AffichageDeL'Action utilisé pour activer votre application.

  1. Ouvrez le projet de votre application dans Microsoft Visual Studio.

  2. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le fichier Package.appxmanifest , puis sélectionnez Afficher le code. Cette option 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 suivant Extensions 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 d'AutoPlay de cet exemple par les valeurs réelles de votre application :

    • Verb: Identificateur pour l'activation de la Lecture Automatique. Votre application l’utilise pour déterminer si l’activation provient de votre appareil. Si votre application a été spécifiée comme gestionnaire de lecture automatique par défaut pour votre appareil, cette valeur doit correspondre au verbe 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 de lecture automatique par défaut pour votre appareil, vous pouvez utiliser n’importe quelle valeur pour le paramètre Verbe, à l’exception de l’ouverture, qui est réservée.

    • ActionDisplayName : La chaîne affichée par AutoPlay pour votre application.

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

Pour gérer l'activation d'AutoPlay

Lorsque votre appareil déclenche une activation de l'AutoPlay, le type d'activation est Windows.ApplicationModel.Activation.ActivationKind.device. Pour vérifier comment votre application a été activée, utilisez l’objet eventObj passé par OnActivated. S’il s’agissait d’AutoPlay, vous pouvez utiliser eventObj pour déterminer l’ID de l'appareil et le verbe d'AutoPlay qui a provoqué l’activation.

Dans cet exemple, le paramètre d’événement d’activation (eventObj) porte l’ID de l’appareil et 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>