Antes de iniciar
Uma das primeiras motivações para explorar o NDK é a oportunidade de aproveitar projetos de software livre, muitos dos quais escritos em C. Após a conclusão deste tutorial, teremos aprendido a criar uma biblioteca de Java Native Interface (JNI), escrita em C e compilada com o Kit de Desenvolvimento Nativo (NDK), e a incorporado em um aplicativo Android escrito na linguagem Java. O aplicativo demonstra como executar operações básicas de processamento de imagem em dados de imagem brutos. Aprenderemos também a expandir o ambiente de desenvolvimento Eclipse para integrar um projeto do NDK em um arquivo de projeto do SDK do Android. Com essa base, estaremos mais bem equipados para transferir o código de software livre existente para a plataforma Android.
Este tutorial apresenta o NDK do Android no ambiente Eclipse. O NDK é usado para acrescentar funcionalidade a um aplicativo Android que use a linguagem de programação C. O tutorial começa com uma olhada de alto nível no NDK e seus cenários de uso comuns. A partir daí, é apresentado o tópico de processamento de imagem, seguido por uma introdução e demonstração do aplicativo deste tutorial: o IBM Photo Phun. Esse aplicativo é uma mistura de código Java baseado no SDK e código C compilado no NDK. O tutorial continua apresentando a Java Native Interface (JNI), uma tecnologia interessante ao trabalhar com o NDK. Uma olhada nos arquivos de origem do projeto concluído fornece um roteiro para o aplicativo desenvolvido aqui. Depois, vamos criar esse aplicativo passo a passo. Há explicações sobre a classe Java e os arquivos de origem em C. Para concluir, o ambiente de desenvolvimento Eclipse é customizado para integrar a cadeia de ferramentas do NDK diretamente ao processo de desenvolvimento Eclipse fácil de usar.
Para acompanhar este tutorial, é preciso saber desenvolver aplicativos em Android com o SDK do Android e ter familiaridade básica com a linguagem de programação C. Além disso, é preciso ter os seguintes:
- Eclipse e Android Developer Tools (ADT) — Editor de código primário, Compilador Java e plug-in Android Development Tools
- Kit de Desenvolvimento de Software (SDK) do Android
- Kit de Desenvolvimento Nativo (NDK) do Android
- Imagem PNG — Imagem usada para testar operações de processamento de imagem
Criei as amostras de código deste tutorial em um MacBook Pro com Eclipse V3.4.2 e Android SDK V8, com suporte ao release 2.2 do Android (Froyo). O release do NDK usado neste tutorial foi o r4b. O código precisa da versão r4b ou posterior porque os recursos de manipulação de imagem do NDK do Android não estão disponíveis em releases anteriores do NDK.
Consulte Recursos para obter links para essas ferramentas.