Partager via


Charger une version test d’un package d’image d’application à des fins de test

Pendant le développement, vous devrez peut-être charger un package d’image sur l’appareil Azure Sphere à des fins de test. Lorsque vous générez une application avec l’environnement de développement intégré (IDE) Visual Studio ou Visual Studio Code, le KIT de développement logiciel (SDK) empaquette l’image de l’application pour vous. Si vous avez un accès direct à un appareil Azure Sphere, le Kit de développement logiciel (SDK) peut également supprimer les applications existantes qui ne sont pas marquées comme partenaires, charger le nouveau package d’images sur l’appareil, le démarrer et activer le débogage. Vous pouvez également charger une version test d’un package d’images directement à partir de la ligne de commande.

Vous devez d’abord activer la fonctionnalité appDevelopment pour l’appareil et ajouter l’appareil à un groupe d’appareils qui ne prend pas en charge les mises à jour des applications cloud. L’attribution d’appareils à un tel groupe garantit que vos applications chargées de manière indépendante ne seront pas remplacées par les déploiements cloud. Pour préparer votre appareil, utilisez la commande az sphere device enable-development. Vous pouvez ensuite charger une version test de l’image.

Charger et déboguer un package d’image à partir de la ligne de commande

Pour charger une version test du package d’image à partir de la ligne de commande, supprimez toutes les applications existantes sur l’appareil, puis chargez la nouvelle.

Pour arrêter et supprimer toutes les applications sur l’appareil :

az sphere device sideload delete

Pour supprimer une seule application, ajoutez l’option --component-id, comme suit :

az sphere device sideload delete --component-id <ComponentID>

Ensuite, chargez la version test du nouveau package d’image :

az sphere device sideload deploy --image-package <imagepackagepath>

Remplacez imagepackagepath par le chemin d’accès au package d’images. Si vous utilisez Visual Studio ou Visual Studio Code, vous trouverez le package d’image dans le sous-dossier bin\ARM\Debug ou bin\ARM\Release du dossier de projet de l’application. Par défaut, la commande démarre l’application après l’avoir déployée.

Pour déboguer l’application, ajoutez l’indicateur --manual-start à la commande az sphere device sideload deploy pour supprimer le démarrage automatique, puis démarrez l’application pour le débogage :

az sphere device sideload deploy --manual-start --image-package <imagepackagepath>
az sphere device app start --debug --component-id <ComponentID>

La commande affiche les ports de sortie et de débogage pour les applications de haut niveau :

   Output Port: 2342
   GDB Port: 2345

Marquer les applications en tant que partenaires

Les applications associées doivent être marquées comme des applications partenaires. Il existe de nombreuses situations où vous chargez plusieurs applications, telles qu’une paire d’applications de haut niveau et en temps réel qui communiquent entre elles. Le fait de marquer les applications en tant que partenaires empêche la suppression d’une application lors du chargement de la seconde. Lorsque les IDE Visual Studio et Visual Studio Code chargent une version test d’un nouveau package d’image, ils suppriment toutes les applications existantes qui ne sont pas marquées comme des applications partenaires.

Pour marquer une application en tant que partenaire à l’aide de CMake dans Visual Studio :

  1. Modifiez le fichier launch.vs.json pour l’application.

  2. Ajoutez la ligne suivante :

    "partnerComponents": [ "<Component ID>" ]
    

    Remplacez l’ID du composant de l’application <Component ID> partenaire par et enregistrez le fichier. Vous trouverez l’ID de composant de chaque application dans son fichier app_manifest.json ou en utilisant az sphere device image list-installed ou az sphere device app show-status.

Pour marquer une application en tant que partenaire à l’aide de CMake dans Visual Studio Code :

  1. Modifiez le fichier .vscode\launch.json pour l’application.

  2. Ajoutez la ligne suivante :

    "partnerComponents": [ "<Component ID>" ]
    

    Remplacez l’ID du composant de l’application <Component ID> partenaire par et enregistrez le fichier. Vous trouverez l’ID de composant de chaque application dans son fichier app_manifest.json ou en utilisant az sphere device image list-installed ou az sphere device app show-status.