Desenvolvimento de software para Android
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,[2] com mais de bilhões de downloads.[3][4] Uma pesquisa em Junho indicou que mais de 67% dos desenvolvedores usaram a plataforma, no tempo da publicação.[5]
Ferramentas oficiais de desenvolvimento
[editar | editar código-fonte]Android SDK
[editar | editar código-fonte]Lançamento | novembro de 2009 (14–15 anos) |
Idioma(s) | Inglês |
Escrito em | Java |
Sistema operacional | Multiplataforma |
Gênero(s) | SDK, IDE |
Página oficial | developer |
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.[6]
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.[6]
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.
Modo de uso
[editar | editar código-fonte]O projeto "helloworldapp" usando o Android Studio para criar um aplicativo móvel com a linguagem de programação Kotlin, que irá exibir na tela a mensagem "Oi Mundo!".[7]
O código do arquivo MainActivity.kt
define o layout de visualização do aplicativo e, em seguida localiza um TextView com o id "textView" e define seu texto/conteúdo a ser exibido como a frase "Oi Mundo!"...[7]
package com.example.helloworldapp
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.TextView
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val textView = findViewById(R.id.textView)
textView.text = "Oi Mundo!"
}
}
O código do arquivo activity_main.xml
define o layout no formato XML, onde configura um TextView com o id "textView" e define seu texto/conteúdo como "Oi Mundo!"...[7]
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Oi Mundo!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
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 reaproveitados no desenvolvimentos de projetos para dispositivos Android.[8]
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.[8]
Modo de uso[8]
[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:
JNIEXPORT void JNICALL
Java_br_com_package_JavaClass_methodA(JNIEnv *env, jobject instance) {
c_methodA();
}
JNIEXPORT jint JNICALL
Java_br_com_package_JavaClass_methodB(JNIEnv *env, jobject instance, jstring str,
jint b) {
const char *c_str = (*env)->GetStringUTFChars(env, str, 0);
int ret = c_methodB(c_str, b);
(*env)->ReleaseStringUTFChars(env, str, c_str);
return ret;
}
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
- ↑ «The Android Source Code». Android Open Source Project (em inglês). Consultado em 19 de setembro de 2022. Arquivado do original em 1 de março de 2017
- ↑ «Google Play Hits 1 Million Apps». Mashable. 24 de julho de 2013
- ↑ «Android App Stats». Consultado em 31 de dezembro de 2010. Cópia arquivada em 2 de janeiro de 2011
- ↑ 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
- ↑ «Developer Economics 2011». Consultado em 19 de dezembro de 2015. Arquivado do original em 29 de setembro de 2013
- ↑ a b «Como baixar o Android Studio e o SDK Tools». Android. Consultado em 6 de Fevereiro de 2016
- ↑ a b c «Creating a Hello World App in Android Studio with Kotlin». codinglabel.com (em inglês). Consultado em 19 de fevereiro de 2024
- ↑ 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]- «Android Developers» (em inglês)