Partilhar via


Crie um aplicativo de alto nível

Importante

Esta é a documentação do Azure Sphere (Legado). O Azure Sphere (Legado) será desativado em 27 de setembro de 2027 e os usuários devem migrar para o Azure Sphere (Integrado) até esse momento. Use o seletor de versão localizado acima do sumário para exibir a documentação do Azure Sphere (Integrado).

Esta seção descreve como criar, empacotar e implantar um aplicativo de alto nível do Azure Sphere.

Estas instruções usam o aplicativo de exemplo HelloWorld_HighLevelApp como exemplo.

Pré-requisitos

Prepare seu dispositivo para desenvolvimento e depuração

Antes de criar um aplicativo de exemplo em seu dispositivo Azure Sphere ou desenvolver novos aplicativos para ele, você deve habilitar o desenvolvimento e o sideload. Por padrão, os dispositivos do Azure Sphere são "bloqueados"; ou seja, eles não permitem que aplicativos em desenvolvimento sejam carregados de um computador e não permitem a depuração de aplicativos. Preparar o dispositivo para sideload remove essa restrição.

O comando azsphere device enable-development configura o dispositivo para aceitar aplicativos para depuração, carrega o servidor de depuração no dispositivo e atribui o dispositivo a um grupo de dispositivos que não permite atualizações de aplicativos na nuvem. Durante o desenvolvimento e a depuração de aplicativos, você deve deixar o dispositivo nesse grupo para que as atualizações de aplicativos na nuvem não substituam o aplicativo em desenvolvimento.

  1. Certifique-se de que o dispositivo Azure Sphere está ligado ao computador e que o computador está ligado à Internet.

  2. Abra uma interface de linha de comando usando PowerShell, Prompt de Comando do Windows ou shell de comando do Linux.

  3. Introduza o seguinte comando:

    azsphere device enable-development
    

    Deverá ver um resultado semelhante ao seguinte:

    Getting device capability configuration for application development.
    Downloading device capability configuration for device ID '<device ID>'.
    Successfully downloaded device capability configuration.
    Successfully wrote device capability configuration file 'C:\Users\user\AppData\Local\Temp\tmpD732.tmp'.
    Setting device group ID 'a6df7013-c7c2-4764-8424-00cbacb431e5' for device with ID '<device ID>'.
    Successfully disabled over-the-air updates.
    Enabling application development capability on attached device.
    Applying device capability configuration to device.
    Successfully applied device capability configuration to device.
    The device is rebooting.
    Installing debugging server to device.
    Deploying 'C:\Program Files (x86)\Microsoft Azure Sphere SDK\DebugTools\gdbserver.imagepackage' to the attached device.
    Image package 'C:\Program Files (x86)\Microsoft Azure Sphere SDK\DebugTools\gdbserver.imagepackage' has been deployed to the attached device.
    Application development capability enabled.
    Successfully set up device '<device ID>' for application development, and disabled over-the-air updates.
    Command completed successfully in 00:00:38.3299276.
    

Se o comando azsphere device enable-development falhar, consulte Solucionar problemas do Azure Sphere para obter ajuda.

Criar e implantar o aplicativo no Visual Studio com depuração

  1. Certifique-se de que o dispositivo está ligado ao PC por USB. No menu Definir item de inicialização, selecione Azure Sphere App (HLCore), onde Azure Sphere App é o nome do seu aplicativo de alto nível atual ou pressione F5.

    Botão Depurador GDB remoto

  2. Se você for solicitado a criar o projeto, selecione Sim. O Visual Studio compila o aplicativo, cria um pacote de imagem, faz sideload no quadro e o inicia no modo de depuração. Sideload significa que o aplicativo é entregue diretamente do PC através de uma conexão com fio, em vez de entregue através da nuvem.

    Observe o ID da imagem do pacote de imagem na saída View>Output>Show de: Build output. Você usará o ID da imagem posteriormente em Tutorial: Criar uma implantação na nuvem.

  3. Por padrão, a janela Saída mostra a saída da Saída do dispositivo. Para ver as mensagens do depurador, selecione Depurar no menu suspenso Mostrar saída de: . Você também pode inspecionar a desmontagem do programa, registros ou memória através do menu Depurar>Windows.

Criar e implantar o aplicativo no Visual Studio sem depuração

  1. Certifique-se de que o dispositivo está ligado ao PC por USB. No menu Depurar, selecione Iniciar sem Depuração ou pressione Ctrl+F5.

  2. Se você for solicitado a criar o projeto, selecione Sim. O Visual Studio compila o aplicativo, cria um pacote de imagem, faz sideload no quadro e o inicia. Sideload significa que o aplicativo é entregue diretamente do PC através de uma conexão com fio, em vez de entregue através da nuvem.

  3. Por padrão, a janela Saída mostra a saída da Saída do dispositivo.

Criar e implantar o aplicativo no Visual Studio Code com depuração

  1. Pressione F5 para criar e depurar o projeto. Se o projeto não tiver sido criado anteriormente ou se os arquivos tiverem sido alterados e a reconstrução for necessária, o Visual Studio Code criará o projeto antes do início da depuração.

  2. Aguarde alguns segundos para que o Visual Studio Code crie o aplicativo, crie um pacote de imagem, implante-o no quadro e inicie-o no modo de depuração. Você verá atualizações de status no painel Saída ao longo do caminho.

    Primeiro, o CMake determina se o aplicativo precisa ser criado. Em caso afirmativo, o foco muda para a janela de saída, que exibe a saída do CMake/Build.

    Em seguida, o painel Saída mostra o resultado à medida que o pacote de imagem é implantado no dispositivo. Finalmente, o Debug Console recebe o foco e mostra a saída do depurador.

Criar e implantar o aplicativo no Visual Studio Code sem depuração

  1. Certifique-se de que o dispositivo está ligado ao PC por USB. No menu Executar, selecione Iniciar sem Depuração ou pressione Ctrl+F5 para criar e executar o projeto. Se o projeto não tiver sido criado anteriormente ou se os arquivos tiverem sido alterados e a reconstrução for necessária, o Visual Studio Code criará o projeto.

  2. Aguarde alguns segundos para que o Visual Studio Code crie o aplicativo, crie um pacote de imagem, implante-o no quadro e inicie-o. Você verá atualizações de status no painel Saída ao longo do caminho.

    Primeiro, o CMake determina se o aplicativo precisa ser criado. Em caso afirmativo, o foco muda para a janela de saída, que exibe a saída do CMake/Build.

    Em seguida, a janela de saída mostra a saída do azsphere à medida que ele implanta o pacote de imagem no dispositivo. O aplicativo é iniciado automaticamente depois de implantado no dispositivo.

Criar a aplicação

Para criar seu aplicativo, você precisará encontrar as ferramentas de compilação, cabeçalhos e bibliotecas corretos — coletivamente chamados de sysroot — em seu computador. O SDK do Azure Sphere é fornecido com várias sysroots para que os aplicativos possam direcionar diferentes conjuntos de APIs, conforme descrito em Versão do tempo de execução do aplicativo, sysroots e APIs Beta. Os sysroots são instalados na pasta de instalação do SDK do Azure Sphere em Sysroots.

  1. Crie ou navegue até o diretório que conterá os arquivos a serem gerados durante o processo de compilação.

  2. Se seu aplicativo depender de outro aplicativo, marque os aplicativos como parceiros em seus arquivos app_manifest.md.

  3. Adicione ou atualize o arquivo de CMakeLists.txt para seu aplicativo para chamar as funções do Azure Sphere CMake conforme necessário.

  4. No diretório de compilação do projeto, no prompt de comando, execute o CMake com os seguintes parâmetros:

    cmake --preset <preset-name> <source-path>
    
    • --preset <preset-name>

      O nome da predefinição de configuração de compilação conforme definido em CMakePresets.json.

    • --build <cmake-path>

      O diretório binário que contém o cache CMake. Por exemplo, se você executar o CMake em um exemplo do Azure Sphere, o comando build será cmake --build out/ARM-Debug.

    • <source-path>

      O caminho do diretório que contém os arquivos de origem para o aplicativo de exemplo. No exemplo, o repositório de exemplos do Azure Sphere foi baixado para um diretório chamado AzSphere.

      Os parâmetros CMake são separados por espaços. O caractere de continuação de linha (^ para linha de comando do Windows, \ para linha de comando do Linux ou ' para PowerShell) pode ser usado para legibilidade, mas não é necessário.

    Os exemplos a seguir mostram os comandos CMake para o aplicativo de alto nível Hello World.

    Linha de Comandos do Windows

    cmake ^
     --preset "ARM-Debug" ^
     "C:\AzSphere\azure-sphere-samples\Samples\HelloWorld\HelloWorld_HighLevelApp"
    

    Windows PowerShell

    cmake `
     --preset "ARM-Debug" `
     "C:\AzSphere\azure-sphere-samples\Samples\HelloWorld\HelloWorld_HighLevelApp"
    
  5. Execute Ninja para construir o aplicativo e criar o arquivo de pacote de imagem:

    ninja -C out/ARM-Debug
    

    Ninja coloca o aplicativo resultante e os arquivos .imagepackage no diretório especificado.

    Você também pode invocar Ninja através do CMake com o seguinte comando:

    cmake --build out/<binary-dir>
    

    Defina <binary-dir> para o diretório binário que contém o cache CMake. Por exemplo, se você executar o CMake em um exemplo do Azure Sphere, o comando build será cmake --build out/ARM-Debug.

Implementar a aplicação

Verifique se o dispositivo tem o recurso appDevelopment para que você possa fazer sideload do aplicativo e garantir que o servidor de depuração esteja presente. Use o comando, azsphere device enable-development se necessário.

  1. Se o dispositivo já estiver executando um ou mais aplicativos, exclua-os.

    azsphere device sideload delete
    

    Observe que esse comando exclui todos os aplicativos no dispositivo. Se você já implantou um RTApp que é parceiro do aplicativo de alto nível, use o --component-id parâmetro para especificar qual aplicativo excluir. Você pode encontrar o ID do componente do aplicativo em seu arquivo app_manifest.json.

  2. Carregue o pacote de imagem em seu dispositivo executando o comando azsphere device sideload deploy e especificando o pacote de imagem. Por exemplo:

azsphere device sideload deploy --image-package C:\Users\LocalSamples\HelloWorld\HelloWorld_HighLevelApp\out\ARM-Debug\HelloWorld_HighLevelApp.imagepackage

Seu aplicativo deve começar a ser executado.

Mais tarde, você pode parar e reiniciar o aplicativo usando os azsphere device app stop --component-id <component-ID> comandos and azsphere device app start --component-id <component ID> .