Compartir a través de


Transferencia local de un paquete de imágenes de aplicación para pruebas

Importante

Esta es la documentación de Azure Sphere (heredado). Azure Sphere (heredado) se retira el 27 de septiembre de 2027 y los usuarios deben migrar a Azure Sphere (integrado) en este momento. Use el selector de versiones situado encima de la TOC para ver la documentación de Azure Sphere (integrado).

Durante el desarrollo, es posible que tenga que transferir localmente un paquete de imágenes en el dispositivo de Azure Sphere para realizar pruebas. Cuando compila una aplicación con el entorno de desarrollo integrado (IDE) de Visual Studio o Visual Studio Code, el SDK empaqueta la imagen de la aplicación automáticamente. Si tiene acceso directo a un dispositivo de Azure Sphere, el SDK también puede eliminar las aplicaciones existentes que no estén marcadas como asociadas, cargar el nuevo paquete de imágenes en el dispositivo, iniciarlo y habilitar la depuración. También puede transferir localmente un paquete de imágenes directamente desde la línea de comandos.

Primero, debe habilitar la funcionalidad appDevelopment para el dispositivo y agregar este a un grupo de dispositivos que no sea compatible con las actualizaciones de aplicaciones en la nube. La asignación de dispositivos a un grupo así garantiza que las implementaciones en la nube no sobrescribirán las aplicaciones transferidas localmente. Para preparar el dispositivo, use el comando azsphere device enable-development. Ahora puede transferir la imagen localmente.

Transferencia local y depuración de un paquete de imágenes desde la línea de comandos

Para transferir localmente el paquete de imágenes desde la línea de comandos, elimine las aplicaciones existentes en el dispositivo y, a continuación, cargue el nuevo.

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, como se indica a continuación:

azsphere device sideload delete --component-id <ComponentID>

A continuación, transfiera localmente el nuevo paquete de imágenes:

azsphere device sideload deploy --image-package <imagepackagepath>

Reemplace imagepackagepath con la ruta de acceso al paquete de imágenes. Si va a usar Visual Studio o Visual Studio Code, puede encontrar el paquete de imágenes en las subcarpetas 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 para la 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

Marcado de aplicaciones como asociadas

Las aplicaciones que están relacionadas pueden marcarse como aplicaciones asociadas. Hay muchas situaciones en las que debería cargar varias aplicaciones como, por ejemplo, un par de aplicaciones de alto nivel y con respuesta en tiempo real, que se comuniquen entre sí. Al marcar las aplicaciones como asociadas, una no se eliminará cuando se cargue la otra. Cuando los IDE de Visual Studio y Visual Studio Code realicen la transferencia local de un nuevo paquete de imágenes, eliminarán las aplicaciones existentes que no estén marcadas como aplicaciones asociadas.

Para marcar una aplicación como asociada mediante CMake en Visual Studio:

  1. Edite el archivo launch.vs.json para la aplicación.

  2. Agregue la línea siguiente:

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

    Sustituya el identificador de componente de la aplicación asociada para <Component ID> y guarde el archivo. Puede encontrar el identificador de componente de cada aplicación en su archivo app_manifest.json o mediante azsphere device image list-installed o azsphere device app show-status.

Para marcar una aplicación como asociada mediante CMake en Visual Studio Code:

  1. Edite el archivo .vscode\launch.json para la aplicación.

  2. Agregue la línea siguiente:

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

    Sustituya el identificador de componente de la aplicación asociada para <Component ID> y guarde el archivo. Puede encontrar el identificador de componente de cada aplicación en su archivo app_manifest.json o mediante azsphere device image list-installed o azsphere device app show-status.