Normalmente , os desenvolvedores que querem criar aplicativos para plataforma Android do Google tem que escrever seus programas em Java. A plataforma em si é escrito em Java, e arquitetura de software do Android é construído em torno da máquina virtual Java ou JVM , que cria o código de máquina de Java bytecode . No entanto , os desenvolvedores que querem escrever aplicações em C pode baixar um conjunto especial de bibliotecas do Google para tornar isso possível . Android SDK
Google fornece um conjunto padrão de ferramentas que permitem que os programadores a criar aplicativos para a plataforma Android , na forma de seu Software Development Kit, ou SDK. Isto inclui um simulador do sistema Android para projetos de testes e as ferramentas de pacotes para a criação de um arquivo que o Android pode executar a partir do código -fonte do projeto. O SDK também inclui bibliotecas para permitir aplicativos escritos em Java para interagir com os recursos avançados do sistema operacional Android .
Android NDK
desenvolvedores que querem criar aplicativos, ou componentes de aplicativos , na linguagem de programação C pode baixar o Google Native Development Kit , ou NDK . Esta é uma coleção de bibliotecas semelhantes às contidas no SDK. No entanto, eles são na linguagem de programação C , em vez de Java . Os desenvolvedores podem usar essas bibliotecas para desenvolver para Android em C da mesma forma que as bibliotecas do SDK permite o desenvolvimento em Java.
Usando NDK
O NDK não é funcional como um kit de desenvolvimento independente. Em vez disso , é uma extensão do SDK. Os desenvolvedores têm que instalar o SDK como uma plataforma na qual o download , usar e atualizar outros componentes do desenvolvimento. Estes incluem o NDK . Os desenvolvedores ainda usam as ferramentas do SDK para criar os pacotes . " Apk " que o Android funciona como apps, simulador do SDK para testar os aplicativos e ferramentas do SDK para transferir os pacotes apk . Para um dispositivo Android real .
C ou Java
a linguagem Java funciona por compilar o código fonte em um formato intermediário chamado bytecode , que JVMs específicas do sistema traduzir para o código de máquina do dispositivo realmente executa . Neste processo , a JVM irá otimizar automaticamente o código de máquina que produz. Isso evita que o programador a tempo de tentar otimizar o código . No entanto , os programadores que trabalham na linguagem C controlar diretamente o que o código compilado máquina será semelhante. Isso permite que os desenvolvedores de aplicativos que desejam exercer este nível detalhado de controle sobre seu código para fazê-lo. Além disso, ele permite que os desenvolvedores que já tenha escrito uma quantidade substancial de código para um projeto em que C para rapidamente porta para Android .