Para compilar e depurar código nativo para um app, serão necessários os seguintes componentes:
- Kit de desenvolvimento nativo do Android (NDK, na sigla em inglês): um conjunto de ferramentas que permitem usar códigos C e C++ com o Android.
- CMake: uma ferramenta de build externa que funciona com o Gradle para criar bibliotecas nativas. Esse componente não é necessário se você pretende usar apenas o ndk-build.
- LLDB: o depurador usado pelo Android Studio para depurar códigos nativos. Por padrão, o LLDB será instalado com o Android Studio.
Esta página descreve como instalar esses componentes automaticamente ou usando
o Android Studio ou a ferramenta sdkmanager
para fazer o download e a instalação manualmente.
Instalar o NDK e o CMake automaticamente
O Plug-in do Android para Gradle 4.2.0 e versões mais recentes poderão instalar automaticamente o NDK e o CMake necessários na primeira vez que você criar o projeto se as licenças deles tiverem sido aceitas antes da instalação. Se você já leu e concorda com os termos de licença, é possível pré-aceitar as licenças em scripts com o comando a seguir:
yes | ${sdk}/cmdline-tools/latest/bin/sdkmanager --licenses
Instalar o NDK e o CMake
Quando você instala o NDK, o Android Studio seleciona o NDK mais recente disponível. Para
a maioria dos projetos, a instalação dessa versão padrão do NDK é o suficiente.
No entanto, caso seu projeto precise de uma ou mais versões específicas do NDK, você poderá
fazer o download e a configuração de versões específicas. Isso ajuda
a garantir a criação de builds reproduzíveis em projetos que dependem de uma versão
específica do NDK. O Android Studio instala todas as versões do NDK no diretório
android-sdk/ndk/
.
Para instalar o CMake e o NDK padrão no Android Studio, siga estas etapas:
Com um projeto aberto, clique em Tools > SDK Manager.
Clique na guia SDK Tools.
Marque as caixas de seleção NDK (Side by side) e CMake.
Figura 1. A janela SDK Tools mostrando a opção NDK (Side by side).
Clique em OK.
Uma caixa de diálogo informará quanto espaço o pacote NDK consome no disco.
Clique em OK.
Quando a instalação estiver concluída, clique em Finish.
Seu projeto vai sincronizar automaticamente o arquivo do build e criar um novo build. Resolva os erros que ocorrerem.
Configurar uma versão específica do CMake
O SDK Manager inclui a versão ramificada 3.6.0 do
CMake, além da versão 3.10.2. Os projetos que não definem uma
versão específica do CMake são criados com o CMake 3.10.2. Para
escolher a versão do CMake, adicione o seguinte ao arquivo build.gradle
do seu módulo:
Groovy
android { ... externalNativeBuild { cmake { ... version "cmake-version" } } }
Kotlin
android { ... externalNativeBuild { cmake { ... version = "cmake-version" } } }
Se você quiser usar uma versão do CMake que não esteja incluída no SDK Manager, siga estas etapas:
- Faça o download e instale o CMake no site oficial do CMake.
- Especifique a versão do CMake que você quer que o Gradle use no arquivo
build.gradle
do módulo. Adicione o caminho para a instalação do CMake na variável de ambiente
PATH
ou inclua-o no arquivolocal.properties
do projeto, conforme mostrado abaixo. Se o Gradle não encontrar a versão do CMake especificada no arquivobuild.gradle
, você vai receber um erro de build.# If you set this property, Gradle no longer uses PATH to find CMake. cmake.dir = "path-to-cmake"</pre>
Se você ainda não tem o sistema de build Ninja instalado na sua estação de trabalho, acesse o site oficial do Ninja (em inglês), faça o download da versão mais recente disponível para seu sistema operacional e instale-a. Não se esqueça de adicionar o caminho para a instalação do Ninja na sua variável de ambiente
PATH
.
Instalar uma versão específica do NDK
Para instalar uma versão específica do NDK, siga estas etapas:
Com um projeto aberto, clique em Tools > SDK Manager.
Clique na guia SDK Tools.
Marque a caixa de seleção Show Package Details.
Marque a caixa de seleção NDK (Side by side) e as caixas de seleção abaixo que corresponderem às versões do NDK que você quer instalar. O Android Studio instala todas as versões do NDK no diretório
android-sdk/ndk/
.Figura 2. A janela SDK Tools mostrando as opções de NDK (Side by side).
Clique em OK.
Uma caixa de diálogo informará quanto espaço os pacotes NDK consomem no disco.
Clique em OK.
Quando a instalação estiver concluída, clique em Finish.
Seu projeto vai sincronizar automaticamente o arquivo do build e criar um novo build. Resolva os erros que ocorrerem.
Configure cada módulo com a versão do NDK que você quer que o projeto use. Se estiver usando o Android Studio 3.6 ou versões mais recentes, o Plug-in do Android Gradle vai escolher uma versão compatível caso ela não seja especificada.
Configurar versões específicas do NDK no projeto
Se uma das seguintes condições for verdadeira, talvez seja necessário configurar a versão do NDK no seu projeto:
- Seu projeto é herdado, e você precisa usar versões específicas do NDK e do Plug-in do Android para Gradle (AGP, na sigla em inglês). Para ver mais informações, consulte Configurar o NDK para o Plug-in do Android para Gradle.
Você tem várias versões do NDK instaladas e quer usar uma específica. Nesse caso, especifique a versão usando a propriedade
android.ndkVersion
no arquivobuild.gradle
do módulo, conforme mostrado no exemplo de código a seguir.Groovy
android { ndkVersion "major.minor.build" // e.g., ndkVersion "21.3.6528147" }
Kotlin
android { ndkVersion = "major.minor.build" // e.g., ndkVersion "21.3.6528147" }
Versão padrão do NDK por versão do AGP
Antes do lançamento, cada versão do AGP é totalmente testada com a versão estável mais recente do NDK. Essa versão do NDK é usada para criar seus projetos se você
não especificar uma versão do NDK no arquivo build.gradle
. A versão padrão do NDK
para diferentes versões do AGP está documentada nas
notas da versão do AGP e
notas da versão anteriores do AGP.