Realizar la instalación de prueba de un paquete de imagen de aplicación para realizar pruebas
Durante el desarrollo, es posible que debas realizar la instalación de prueba de un paquete de imagen en el dispositivo Azure Sphere para realizar pruebas. Al crear una aplicación con Visual Studio o Visual Studio Code entorno de desarrollo integrado (IDE), el SDK empaqueta la imagen de la aplicación por usted. Si tiene acceso directo a un dispositivo Azure Sphere, el SDK también puede eliminar aplicaciones existentes que no estén marcadas como partners, cargar el nuevo paquete de imagen en el dispositivo, iniciarlo y habilitar la depuración. También puedes realizar la instalación de prueba de un paquete de imagen directamente desde la línea de comandos.
Primero debe habilitar la funcionalidad appDevelopment para el dispositivo y agregar el dispositivo a un grupo de dispositivos que no admite actualizaciones de aplicaciones en la nube. La asignación de dispositivos a un grupo de este tipo garantiza que las implementaciones en la nube no sobrescribirán las aplicaciones de instalación de prueba. Para preparar el dispositivo, utilice el comando azsphere device enable-development. A continuación, puedes realizar instalaciones de prueba de la imagen.
Realizar la instalación de prueba y depurar un paquete de imagen desde la línea de comandos
Para realizar la instalación de prueba del paquete de imágenes desde la línea de comandos, eliminas todas las aplicaciones existentes en el dispositivo y, a continuación, cargas la nueva.
Para detener y eliminar todas las aplicaciones del dispositivo:
azsphere device sideload delete
Para eliminar una sola aplicación, agregue la opción --component-id, de la siguiente manera:
azsphere device sideload delete --component-id <ComponentID>
A continuación, prueba el nuevo paquete de imagen:
azsphere device sideload deploy --image-package <imagepackagepath>
Reemplace imagepackagepath por la ruta de acceso al paquete de imagen. Si usa Visual Studio o Visual Studio Code, puede encontrar el paquete de imagen en la carpeta bin\ARM\Debug o bin\ARM\Release de la carpeta de proyecto de la aplicación. De forma predeterminada, el comando inicia la aplicación después de implementarla.
Para depurar la aplicación, agregue la marca --manual-start al comando azsphere device sideload deploy para suprimir el inicio automático y, a continuación, inicie la aplicación de depuración:
azsphere device sideload deploy --manual-start --image-package <imagepackagepath>
azsphere device app start --debug --component-id <ComponentID>
El comando muestra los puertos de salida y depuración para las aplicaciones de alto nivel:
Output Port: 2342
GDB Port: 2345
Marcar aplicaciones como partners
Las aplicaciones relacionadas deben estar marcadas como aplicaciones asociadas. Hay muchas situaciones en las que se cargan varias aplicaciones, como un par de aplicaciones de alto nivel y en tiempo real que se comunican entre sí. Si marca las aplicaciones como partners, evitará que se elimine una cuando se cargue la segunda. Cuando Visual Studio y Visual Studio Code id. descargan de prueba un nuevo paquete de imagen, eliminan las aplicaciones existentes que no se marcan como aplicaciones asociadas.
Para marcar una aplicación como partner mediante CMake en Visual Studio:
Edite el archivo launch.vs.json de la aplicación.
Agregue la línea siguiente:
"partnerComponents": [ "<Component ID>" ]
Sustituya el id. de componente de la aplicación asociada por
<Component ID>
el archivo y guárdelo. Puede encontrar el id. de componente de cada aplicación en su archivo app_manifest.json o utilizando azsphere device image list-installed o azsphere device app show-status.
Para marcar una aplicación como partner mediante CMake en Visual Studio Code:
Edite el archivo .vscode\launch.json de la aplicación.
Agregue la línea siguiente:
"partnerComponents": [ "<Component ID>" ]
Sustituya el id. de componente de la aplicación asociada por
<Component ID>
el archivo y guárdelo. Puede encontrar el id. de componente de cada aplicación en su archivo app_manifest.json o utilizando azsphere device image list-installed o azsphere device app show-status.