Desenvolvimento de software para Android

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

Desenvolvimento de software para Android é o processo pelo qual um novo aplicativo é criado para o sistema operacional Android. Aplicativos são geralmente desenvolvidos na linguagem de programação Java usando o Android software development kit (SDK), mas outros ambientes de desenvolvimento estão também disponíveis.

Desde julho de 2013, mais de um milhão de aplicativos foram desenvolvidos para Android,[1] com mais de bilhões de downloads.[2][3] Uma pesquisa em Junho indicou que mais de 67% dos desenvolvedores usaram a plataforma, no tempo da publicação.[4]

Ferramentas oficiais de desenvolvimento[editar | editar código-fonte]

Android SDK[editar | editar código-fonte]

Android SDK
Lançamento novembro de 2009 (7 anos)
Idioma(s) Inglês
Linguagem Java
Sistema operacional Multiplataforma
Gênero(s) SDK, IDE
Página oficial developer.android.com/sdk/index.html

O Kit de Desenvolvimento de Software (SDK) do Android inclui uma lista compreensiva de ferramentas de desenvolvimento. É incluído um debugger, bibliotecas, um emulador baseado em QEMU, documentação, códigos de exemplo e tutoriais. As plataformas suportadas para o desenvolvimento incluem sistemas operacionais baseados em Linux, Mac OS X 10.5.8 ou superior e Windows XP ou superior.[5]

Até o final de 2014, o ambiente de desenvolvimento integrado (IDE) oficial era o Eclipse, utilizando o plugin Android Development Tools (ADT). Em 2015, Android Studio, feito pela Google e com IntelliJ é a IDE oficial.[5]

Aplicativos de Android consistem em arquivos do formato .apk e são armazenados no diretório /data/app do sistema operacional. Esta pasta é acessível somente ao usuário root por razões de segurança.

Android Debug Bridge[editar | editar código-fonte]

O Android Debug Bridge (ADB) é um kit de ferramentas incluso no Android SDK. Consiste de programas tanto de cliente quanto de servidor que comunicam entre si. O ADB é tipicamente acessado através da interface de linha de comando, apesar de que existem inúmeras interfaces gráficas de usuário para controlar o ADB. O formato usual de comandos no ADB é tipicamente:

adb [-d|-e|-s <númeroSerial>] <comando>

Android NDK[editar | editar código-fonte]

O Native Development Kit (NDK) é um conjunto de ferramentas disponibilizadas pelo Google que permite que códigos desenvolvidos em linguagem de programação C/C++ sejam reproveitados no desenvolvimentos de projetos para dispositivos Android.[6]

Esta ferramenta deve ser utilizada por programadores experientes pois aumenta a complexidade do código. Em contrapartida, permite que códigos complexos, bem testados e validados em outros dispositivos, possam ser integrados no Android, evitando retrabalho.

Também é utilizado quando o desempenho é primordial, como em simuladores físicos, jogos ou programas gráficos.

IDE para Desenvolvimento[editar | editar código-fonte]

Antigamente o NDK só podia ser utilizado por linha de comando ou no Eclipse. Hoje é possível utilizar o Android Studio e o Gradle para desenvolver os projetos.[6]

Como Funciona[6][editar | editar código-fonte]

Basicamente o NDK permite que você inclua todos seu código nativo em C/C++ e também utilize as bibliotecas padrão do C/C++.

O código nativo é colocado em um pasta, normalmente chamada de JNI. Já na parte do código Android em Java, é feita a chamada de método responsável por carregar a biblioteca nativa:

System.loadLibrary("library");

Também na parte Java, devem ser criados métodos que representarão os métodos nativos. Utiliza-se a palavra chave "native", como no exemplo:

public native void methodA();
public native int methodB(String str, int b);

Finalmente, deve ser criado um arquivo em linguagem C que fará a ligação dos métodos acima citados com os métodos nativos. Utiliza-se a técnica de JNI para alcançar este objetivo. Segue um simple exemplo:

 1 JNIEXPORT void JNICALL
 2 Java_br_com_package_JavaClass_methodA(JNIEnv *env, jobject instance) {
 3     c_methodA();
 4 }
 5 
 6 JNIEXPORT jint JNICALL
 7 Java_br_com_package_JavaClass_methodB(JNIEnv *env, jobject instance, jstring str,
 8                                                             jint b) {
 9     const char *c_str = (*env)->GetStringUTFChars(env, str, 0);
10     int ret = c_methodB(c_str, b);
11     (*env)->ReleaseStringUTFChars(env, str, c_str);
12     return ret;
13 }

Note que nas linhas 3 e 10 são feitas as chamadas para os métodos nativos C.

Ver também[editar | editar código-fonte]

Referências

  1. «Google Play Hits 1 Million Apps». Mashable. 24 de julho de 2013 
  2. «Android App Stats». Consultado em 31 de dezembro de 2010. Cópia arquivada em 2 de janeiro de 2011 
  3. Leena Rao (14 de abril de 2011). «Google: 3 Billion Android Apps Installed; Downloads Up 50 Percent From Last Quarter». Techcrunch. Consultado em 13 de maio de 2011. Cópia arquivada em 25 de abril de 2011 
  4. «Developer Economics 2011» 
  5. a b «Como baixar o Android Studio e o SDK Tools». Android. Consultado em 6 de Fevereiro de 2016 
  6. a b c «Como configurar o NDK no Android Studio com Gradle e um exemplo». eMMis. Consultado em 13 de setembro de 2016 

Ligações externas[editar | editar código-fonte]

Wikilivros
O Wikilivros tem um livro chamado Android
Ícone de esboço Este artigo sobre Informática é um esboço. Você pode ajudar a Wikipédia expandindo-o.