terça-feira, 9 de agosto de 2011

Hello Android World

Depois de anos, reativando o blog com um post sobre o Android...

Comprei um Nexus S, da Samsung e pretendo criar algumas apps pro Android. O emulador do Android é muito (muito mesmo) lento. Então, a ideia é usar um dispositivo "real" pra testes e debug.

Instalando o SDK
Primeiro, as dependências: precisa instalar o Java (estou usando o OpenJDK 1.6.0_22 e o ant). Use o yum ou o apt, funciona! ;)
 
Depois, é necessário instalar o SDK do Android, que está disponível em http://developer.android.com/sdk/. No Linux, primeiro precisa baixar e descompactar em algum lugar.

Eu baixei e descompactei em /home/rodolfo/source/android/android-sdk-linux_x86.

Depois, é necessário instalar a versão da API que se quer usar. Para isso, executamos "android" que está na pasta "tools".



Seguindo a interface, acesse "Available Packages" e  marque a versão do Android no celular. Atualmente, a última para celulares (a 3.* é para trablets) é o "SDK Plataform Android 2.3.3, API 10, revision 1".

Atenção para o número 10 da API, será útil no futuro. Espere o download e era isso. :)

Tipos de Aplicações no Android
  • Activities => interface gráfica onde o usuário pode interagir
  • Services => parte/software que fica executando em segundo plano
  • Broadcast Receivers => aplicações que respondem a determinados eventos, como receber um SMS, por exemplo. 
No nosso "HelloWorld", vamos criar uma "Activity", com um texto "HelloWorld" na tela. Simples assim.

Ajustando o ambiente
Como não pretendo usar o eclipse, uma dica é configurar o shell para usar diretamente os comandos do SDK.

export PATH="$PATH:/home/rodolfo/source/android/android-sdk-linux_x86/tools:/home/rodolfo/source/android/android-sdk-linux_x86/platform-tools"
Lembre-se de ajustar o path para onde você descompactou o SDK. ;)


Criando o projeto

No shell:
android create project -t 10 -k meu.HelloWorld -a HelloWorld -n myHelloWorld --path ./myHelloWorld
Os parâmetros:
  • -t , onde o é o nro que está na API, quando instalamos
  • -k indica o nome do projeto, que sempre precisa ter 2 palavras, separadas por "." (deve ser culpa do Java).
  • -n indica o nome da atividade. Quando vc instalar a app no celular, é esse o nome que vai aparecer no menu do android.
  • --path é o local onde os arquivos do projeto serão criados
O projeto, obviamente, não faz nada. Vamos alterar só pra escrever o HelloWorld na tela.


O primeiro código

No "path" do projeto existe uma pasta "src" que - obviamente - contém os fontes. Lá dentro, edite o arquivo HelloWorld.java:

package meu.HelloWorld;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class HelloWorld extends Activity
{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        TextView tv = new TextView(this);
        tv.setText("Hello, Android!");
        setContentView(tv);
    }
}
Sem muitas explicações, vamos logo rodar isso...


Compilando...
Voltando ao path do projeto, execute:
ant debug
Sim, por enquanto, debug ativo. E só.
O ant já cria, no diretório "bin" do projeto, os arquivos .apk para serem instalados.


... configurar o celular...
É preciso habilitar o celular para rodar aplicações de fora do Android Market. Isso fica nos ajustes (settings) do celular.
E mais algumas configurações que podem ser encontradas em http://developer.android.com/guide/developing/device.html
 
... e rodar!
No projeto, é só executar
ant install
A aplicação será transferida para o celular. A partir de agora, só precisa clicar nela pra tudo sair funcionando..


Melhor que usar o eclipse, né!? ;)




Fontes:
http://developer.android.com/guide/developing/device.html
http://blogs.nitobi.com/joe/2010/03/26/android-without-eclips/

Nenhum comentário: