Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Importante
A partir do Visual Studio 2026 (versão 18.0), o desenvolvimento móvel com carga de trabalho C++ para iOS e Android, bem como as ferramentas Embedded e IoT (RTOS Viewer, Serial Monitor, Peripheral Viewer e ST Project Import), não são mais suportados e serão removidos em uma atualização futura. Os NDKs do Android incluídos no desenvolvimento móvel com carga de trabalho C++ permanecem suportados. O suporte a OpenGL não está mais disponível. Ele foi disponibilizado pela última vez no Visual Studio 17.3.
Você pode criar soluções e projetos do Visual Studio para aplicativos iOS e aplicativos Android que compartilham código comum. Este artigo orienta você por um modelo de solução combinada. Ele cria tanto uma aplicação iOS como uma aplicação Android Native Activity. Os aplicativos têm código C++ em comum que usa OpenGL ES para exibir o mesmo cubo rotativo animado em cada plataforma. OpenGL ES (OpenGL for Embedded Systems ou GLES) é uma API gráfica 2D e 3D. É suportado em muitos dispositivos móveis.
Requerimentos
Aqui estão os requisitos de sistema para criar um aplicativo OpenGL ES para iOS e Android. Se ainda não o fez, instale a carga de trabalho Mobile Development with C++ no Visual Studio Installer. Para obter os modelos OpenGL ES e criar para iOS, inclua as ferramentas de desenvolvimento C++ iOS opcionais. Para criar para Android, instale as ferramentas de desenvolvimento C++ Android e as ferramentas de terceiros necessárias: Android NDK, Apache Ant e Google Android Emulator.
Para um melhor desempenho do emulador em plataformas Intel, uma opção é instalar o Intel Hardware Accelerated Execution Manager (HAXM). Para obter instruções detalhadas, consulte Instalar o desenvolvimento móvel multiplataforma com C++.
Para criar e testar o aplicativo iOS, você precisará de um computador Mac. Configure-o de acordo com as instruções de instalação. Para obter mais informações sobre como configurar para desenvolvimento iOS, consulte Instalar e configurar ferramentas para criar usando iOS.
Criar um novo projeto de aplicativo OpenGLES
Neste tutorial, você primeiro cria um novo projeto de aplicativo OpenGL ES e, em seguida, compila-o e executa-o em um emulador Android. Em seguida, você cria o aplicativo para iOS e executa o aplicativo em um dispositivo iOS.
No Visual Studio, escolha Arquivo>Novo>Projeto.
Na caixa de diálogo Novo Projeto, em Modelos, escolha Visual C++>Cross Platform e, em seguida, escolha o modelo Aplicativo OpenGLES (Android, iOS).
Dê ao aplicativo um nome como MyOpenGLESApp e escolha OK.
O Visual Studio cria a nova solução e abre o Gerenciador de Soluções.
No Visual Studio, escolha Arquivo>Novo>Projeto.
Na caixa de diálogo Criar um novo projeto , selecione o modelo Aplicativo OpenGLES (Android, iOS) e escolha Avançar.
Na caixa de diálogo Configurar seu novo projeto , digite um nome como MyOpenGLESApp em Nome do projeto e escolha Criar.
O Visual Studio cria a nova solução e abre o Gerenciador de Soluções.
A nova solução OpenGL ES Application inclui três projetos de biblioteca e dois projetos de aplicação. A pasta Bibliotecas inclui um projeto de código compartilhado e dois projetos específicos da plataforma que fazem referência ao código compartilhado:
MyOpenGLESApp.Android.NativeActivitycontém as referências e o código de colagem que implementa seu aplicativo como uma atividade nativa no Android. Os pontos de entrada do código de cola são implementados em main.cpp, que inclui o código compartilhado comum emMyOpenGLESApp.Shared. Os cabeçalhos pré-compilados estão em pch.h. Este projeto de app Native Activity é compilado em um ficheiro de biblioteca partilhada (.so), que é utilizado pelo projetoMyOpenGLESApp.Android.Packaging.MyOpenGLESApp.iOS.StaticLibrarycria um arquivo de biblioteca estática (.a) do iOS que contém o código compartilhado noMyOpenGLESApp.Shared. Ele está vinculado ao aplicativo criado peloMyOpenGLESApp.iOS.Applicationprojeto.MyOpenGLESApp.SharedContém o código compartilhado que funciona entre plataformas. Ele usa macros de pré-processador para compilação condicional de código específico da plataforma. O código compartilhado é coletado por referência de projeto em ambosMyOpenGLESApp.Android.NativeActivityeMyOpenGLESApp.iOS.StaticLibrary.
A solução tem dois projetos para construir os aplicativos para as plataformas Android e iOS:
MyOpenGLESApp.Android.Packagingcria o arquivo .apk para implantação em um dispositivo Android ou emulador. Este ficheiro contém os recursos e o ficheiro AndroidManifest.xml onde definir as propriedades do manifesto. Ele também contém o arquivo build.xml que controla o processo de compilação Ant. Ele é definido como o projeto de inicialização por padrão, para que possa ser implantado e executado diretamente do Visual Studio.MyOpenGLESApp.iOS.Applicationcontém os recursos e Objective-C código de colagem para criar um aplicativo iOS vinculado ao código da biblioteca estática C++ noMyOpenGLESApp.iOS.StaticLibrary. Este projeto cria um pacote de compilação que é transferido para o seu Mac pelo Visual Studio e o agente remoto. Quando você cria esse projeto, o Visual Studio envia os arquivos e comandos para criar e implantar seu aplicativo no Mac.
Crie e execute o aplicativo para Android
A solução criada pelo modelo define o aplicativo Android como o projeto padrão. Você pode criar e executar este aplicativo para verificar sua instalação e configuração. Para um teste inicial, execute o aplicativo em um dos perfis de dispositivo instalados pelo emulador para Android. Se preferir testar seu aplicativo em outro destino, você pode carregar o emulador de destino. Em alternativa, ligue um dispositivo ao computador.
Para criar e executar o aplicativo Android Native Activity
Se ainda não estiver selecionado, escolha x86 na lista suspensa Plataformas de Solução.
Use x86 para direcionar o emulador. Para direcionar um dispositivo, escolha a plataforma de solução com base no processador do dispositivo. Se a lista Plataformas de Solução não for exibida, escolha Plataformas de Solução na lista Adicionar/Remover Botões e escolha sua plataforma.
No Gerenciador de Soluções, abra o menu de atalho para
MyOpenGLESApp.Android.Packagingo projeto e escolha Compilar.
A janela Saída exibe a saída do processo de compilação para a biblioteca compartilhada do Android e o aplicativo Android.
Escolha um dos perfis de dispositivo Android emulados como seu destino de implantação.
Você pode ter instalado outros emuladores ou conectado um dispositivo Android. Você pode escolhê-los na lista suspensa de destino de implantação. Para executar o aplicativo, a plataforma de solução criada deve corresponder à plataforma do dispositivo de destino.
Pressione F5 para iniciar a depuração ou Shift+F5 para iniciar sem depuração.
O Visual Studio inicia o emulador, que leva vários segundos para carregar e implantar seu código. Veja como o aplicativo aparece no emulador:
Depois que seu aplicativo for iniciado, você poderá definir pontos de interrupção e usar o depurador para percorrer o código, examinar locais e observar valores.
Prima Shift+F5 para parar a depuração.
O emulador é um processo separado que continua a ser executado. Você pode editar, compilar e implantar seu código várias vezes no mesmo emulador. Seu aplicativo aparece na coleção de aplicativos no emulador e pode ser iniciado diretamente a partir daí.
Os projetos de biblioteca e aplicativo Android Native Activity gerados colocam o código compartilhado C++ em uma biblioteca dinâmica. Inclui código "cola" para interface com a plataforma Android. A maioria do código do aplicativo está na biblioteca. O manifesto, os recursos e as instruções de compilação estão no projeto de empacotamento. O código compartilhado é chamado a partir de main.cpp no projeto NativeActivity. Para obter mais informações sobre como programar uma atividade nativa do Android, consulte a página Conceitos NDK do desenvolvedor Android.
O Visual Studio cria projetos de atividade nativa do Android usando o NDK do Android. Ele usa Clang como o conjunto de ferramentas da plataforma. O Visual Studio mapeia as propriedades do projeto nos comandos compilar, vincular e depurar na plataforma de destino. Para obter detalhes, abra a caixa de diálogo Property Pages para o projeto MyOpenGLESApp.Android.NativeActivity . Para obter mais informações sobre as opções de linha de comando, consulte o Manual do Usuário do Compilador Clang.
Criar e executar a aplicação iOS num dispositivo iOS
Criar e editar o projeto de aplicativo iOS no Visual Studio. Devido a restrições de licenciamento, ele deve ser criado e implantado a partir de um Mac. O Visual Studio se comunica com um agente remoto em execução no Mac para transferir arquivos de projeto e executar comandos de compilação, implantação e depuração. Configure seu Mac e Visual Studio para se comunicar antes de criar o aplicativo iOS. Para obter instruções detalhadas, consulte Instalar e configurar ferramentas para criar usando iOS. Execute o agente remoto no Mac e emparelhe-o com o Visual Studio. Em seguida, você pode criar e executar o aplicativo iOS para verificar sua instalação e configuração.
Para implantar seu aplicativo em um dispositivo iOS, primeiro configure o logon automático no Xcode. A assinatura automática cria um perfil de provisionamento para assinar uma compilação da aplicação.
Para configurar a assinatura automática no Xcode
Se ainda não o fez, instale o Xcode no seu Mac.
Abra a aplicação Xcode no Mac.
Crie um novo projeto Single View Application Xcode. Preencha os campos obrigatórios durante a criação do projeto. Os valores podem ser arbitrários, pois o projeto é usado apenas para criar um perfil de provisionamento que é usado posteriormente para assinar uma compilação do aplicativo.
Adicione o seu ID Apple inscrito numa conta do Apple Developer Program ao Xcode. O seu ID Apple é utilizado como identidade de assinatura para assinar aplicações. Para adicionar sua identidade de assinatura no Xcode, abra o menu Xcode e escolha Preferências. Selecione Contas e clique no botão Adicionar (+) para adicionar o seu ID Apple. Para obter instruções detalhadas, consulte Adicionar a sua conta ID Apple.
Nas configurações "Gerais" do projeto Xcode, altere o valor de Bundle Identifier para
com.<NameOfVSProject>, onde<NameOfVSProject>é o mesmo nome do projeto de solução do Visual Studio que você criou. Por exemplo, se você criou um projeto chamadoMyOpenGLESAppno Visual Studio, defina Bundle Identifier comocom.MyOpenGLESApp.
Para ativar a assinatura automática, verifique. Gerencie automaticamente a assinatura**.
Selecione o nome da equipa do ID Apple que adicionou como Equipa de desenvolvimento.
Para criar e executar o aplicativo iOS em um dispositivo iOS
Execute o agente remoto no Mac e verifique se o Visual Studio está emparelhado com o agente remoto. Para iniciar o agente remoto, abra uma janela do aplicativo Terminal e digite
vcremote. Para obter mais informações, consulte Configurar o agente remoto no Visual Studio.
Anexe um dispositivo iOS ao Mac. Quando liga o dispositivo a um computador pela primeira vez, um alerta pergunta se confia no computador para aceder ao dispositivo. Ative o dispositivo para confiar no computador Mac.
No Visual Studio, se ainda não estiver selecionado, escolha a plataforma de solução na lista suspensa Plataformas de Solução com base no processador do dispositivo. Neste exemplo, é um processador ARM64 .
No Gerenciador de Soluções, abra o menu de atalho para o projeto MyOpenGLESApp.iOS.Application e escolha Descarregar projeto para descarregar o projeto.
Novamente, abra o menu de atalho para o projeto MyOpenGLESApp.iOS.Application descarregado e escolha Edit project.pbxproj para editar o arquivo de projeto. Procure no
project.pbxprojarquivo o atributobuildSettingse adicioneDEVELOPMENT_TEAMusando o seu ID da equipa Apple. A captura de ecrã abaixo mostra um exemplo de valor de123456ABCpara o Apple Team ID. Pode encontrar o valor do seu ID de equipa Apple a partir do Xcode. Vá para Configurações de compilação e passe o mouse sobre o nome da equipe de desenvolvimento para mostrar uma dica de ferramenta. A dica de ferramenta mostra o ID da sua equipa.
Feche o
project.pbxprojficheiro, abra o menu de contexto para o projeto MyOpenGLESApp.iOS.Application não carregado e escolha Recarregar Projeto para recarregar o projeto.Agora construa o projeto MyOpenGLESApp.iOS.Application abrindo o menu de atalho para o projeto e escolhendo Build.
A janela Saída exibe a saída do processo de compilação. Ele mostra resultados para a biblioteca estática do iOS e o aplicativo iOS. No Mac, a janela Terminal que executa o agente remoto mostra o comando e a atividade de transferência de arquivos.
No seu computador Mac, poderá ser-lhe solicitado permitir que o Codesign aceda ao seu porta-chaves. Escolha Permitir para continuar.
Escolha o seu dispositivo iOS na barra de ferramentas para executar a aplicação no seu dispositivo ligado ao Mac. Se o aplicativo não iniciar, verifique se o dispositivo dá permissão para que o aplicativo implantado seja executado no dispositivo. Esta permissão pode ser definida acedendo a Definições>Gerais>de Gestão de Dispositivos no dispositivo. Selecione sua conta do Aplicativo de Desenvolvedor, confie em sua conta e verifique o aplicativo. Tente executar o aplicativo novamente a partir do Visual Studio.
Depois que seu aplicativo for iniciado, você poderá definir pontos de interrupção e usar o depurador do Visual Studio para examinar locais, ver a pilha de chamadas e observar valores.
Prima Shift+F5 para parar a depuração.
Os projetos de aplicativo e biblioteca iOS gerados colocam o código C++ em uma biblioteca estática que implementa apenas o código compartilhado. A maior parte do código do aplicativo está no
Applicationprojeto. As chamadas para o código da biblioteca compartilhada neste projeto de modelo são feitas no arquivo GameViewController.m . Para criar seu aplicativo iOS, o Visual Studio usa o conjunto de ferramentas da plataforma Xcode, que requer comunicação com um cliente remoto que está sendo executado em um Mac.Visual Studio transfere os arquivos de projeto para o cliente remoto. Em seguida, ele envia comandos para criar o aplicativo usando o Xcode. O cliente remoto envia informações de status de compilação de volta para o Visual Studio. Quando o aplicativo é criado com êxito, o Visual Studio pode enviar comandos para executar e depurar o aplicativo. O depurador no Visual Studio controla o aplicativo em execução no dispositivo iOS conectado ao Mac. O Visual Studio mapeia as propriedades do projeto para as opções usadas para compilar, vincular e depurar na plataforma iOS de destino. Para obter detalhes da opção de linha de comando do compilador, abra a caixa de diálogo Property Pages para o projeto MyOpenGLESApp.iOS.StaticLibrary.
Personalize as suas aplicações
Você pode modificar o código C++ compartilhado para adicionar ou alterar a funcionalidade comum. Altere as chamadas para o código partilhado nos projetos MyOpenGLESApp.Android.NativeActivity e MyOpenGLESApp.iOS.Application para que sejam iguais. Você pode usar macros de pré-processador para especificar seções específicas da plataforma em seu código comum. A macro __ANDROID__ do pré-processador é predefinida quando você cria para Android. A macro __APPLE__ do pré-processador é predefinida quando você cria para iOS.
Para ver o IntelliSense para uma plataforma de projeto específica, escolha o projeto na lista suspensa do alternador de contexto. Está na barra de navegação na parte superior da janela do editor.
Os problemas do IntelliSense no código usado pelo projeto atual são marcados com uma linha ondulada vermelha. Uma linha ondulada roxa marca o problema em outros projetos. O Visual Studio não oferece suporte à colorização de código ou ao IntelliSense para arquivos Java ou Objective-C. No entanto, você ainda pode modificar os arquivos e recursos de origem. Use-os para definir o nome do aplicativo, ícone e outros detalhes de implementação.