Infra - Linux
Instalando o Android SDK na plataforma Linux
Android é um sistema operacional open source baseado no Linux para dispositivos portáteis. Pertencente ao Google e a Open Handset Alliance (OHA), uma aliança voltada para dispositivos móveis open source, composta com aproximadamente 30 empresas de nome mercadológico (Intel, Motorola, Samsung e outros).
por Alessandro de Oliveira FariaIntrodução:
Instalando e configurando o ambiente de desenvolvimento Android SDK
Criando o primeiro Hello Word
Android é um sistema operacional open source baseado no Linux para dispositivos portáteis. Pertencente ao Google e a Open Handset Alliance (OHA), uma aliança voltada para dispositivos móveis open source, composta com aproximadamente 30 empresas de nome mercadológico (Intel, Motorola, Samsung e outros).
O seu SDK (kit de desenvolvimento) proporciona ferramentas e chamadas via API na linguagem JAVA para desenvolvimento de programas. Resumidamente, são programas para celulares com um sistema operacional, middleware e interface. A seguir um breve resumo da arquitetura, onde os principais recursos desta plataforma mobile são a máquina virtual otimizada, navegador integrado, biblioteca 2D e 3D, banco SQLite e plugin para o Eclipse (ADT).
Arquitetura (Raio X do Android):
A "Camada Linux Kernel" é a camada composta do kernel do Linux versão 2.6 que orquestra os serviços, segurança, gerenciamento de memória e processos, rede e drivers. Não podemos esquecer também da abstração do hardware nesta camada. Já na camada de bibliotecas encontramos diversas bibliotecas em C/C++ utilizadas pelo Android: biblioteca C padrão (libc), multimídia, visualização de camadas 2D e 3D, funções para browser, funções para gráficos, funções de aceleração de hardware, renderização 3D, fontes bitmap e vetorizada e funções de acessos ao banco SQLite. Em síntese, todos os recursos são disponíveis no Framework para o desenvolvimento de pacotes.
Dalvik é uma uma instância da máquina virtual. Dalvik é criada para cada novo programa em execução no Android. O Dalvik é uma máquina virtual diferente da tradicional JVM, mais performática (pelo fato de ser otimizada para dispositivos móveis), com maior integração com a nova geração de hardware e projetada para executar várias VMs paralelamente, é otimizada para consumo mínimo de memória, bateria e CPU.
Framework Application: disponibiliza todas as APIs e recursos necessários para os pacotes/aplicativos: classes visuais como botões e views, Content Providers (troca de recurso entre aplicativos), gerenciador de recurso, ciclo de vida da aplicação e gerenciador de pacotes.
Camada Applications é a camada que, como o próprio nome diz, encontra-se todos os aplicativos do Android, como cliente de e-mail, navegador web, contatos entre outros. Resumindo, para desenvolver programas para a plataforma Android, criaremos os aplicativos em Java na VM Dalvik.
Arquitetura (Raio X do Android):
Dalvik é uma uma instância da máquina virtual. Dalvik é criada para cada novo programa em execução no Android. O Dalvik é uma máquina virtual diferente da tradicional JVM, mais performática (pelo fato de ser otimizada para dispositivos móveis), com maior integração com a nova geração de hardware e projetada para executar várias VMs paralelamente, é otimizada para consumo mínimo de memória, bateria e CPU.
Framework Application: disponibiliza todas as APIs e recursos necessários para os pacotes/aplicativos: classes visuais como botões e views, Content Providers (troca de recurso entre aplicativos), gerenciador de recurso, ciclo de vida da aplicação e gerenciador de pacotes.
Camada Applications é a camada que, como o próprio nome diz, encontra-se todos os aplicativos do Android, como cliente de e-mail, navegador web, contatos entre outros. Resumindo, para desenvolver programas para a plataforma Android, criaremos os aplicativos em Java na VM Dalvik.
Instalando e configurando o ambiente de desenvolvimento Android SDK
Em primeiro lugar, o download deve ser efetuado em http://developer.android.com/sdk/index.html, selecione o arquivo referente a plataforma utilizada (Windows, Linux ou Mac) e clique em "I agree to the terms of the SDK License Agreement" para aceitar os termo da licença do SDK e logo a após pressione o botão Download. Abaixo os comandos no modo console para efetuar a descompactação do arquivo SDK e execução do Android.
$ tar -zxvf android-sdk_r04-linux_86.tgz
$ cd android-sdk-linux_86/tools
$ ./android
Sugiro adicionar na variável ambiental PATH a pasta TOOLS do pacote Android SDK. Basta inserir no arquivo ~/.bashrc uma linha informando a localização das ferramentas do Android. A seguir um exemplo da linha a ser adicionada:
Ao executar o comando ./android, se tudo estiver funcionando corretamente, teremos um formulário similar ao da figura abaixo:
Adicione os componentes no SDK e clique na opção Avaliable Packages e selecione a plataforma desejada (Android 1.1, 1.5, 1.6, 2.0, 2.1... ). Caso ocorra problemas de conexão, habilite o uso forçado https selecionando a opção Settings e Force https. E repita a operação.
Na janela de diálogo, clique em Accept e no botão Install Accept.
Instalando o plugin do Eclipse (ADT - Android Development Tools):
No meu caso estou utilizando o Eclipse 3.5. Entretanto na página oficial do Android é mencionada a compatibilidade com diversas versões. Para iniciar a instalação do plugin ADT, abra o Eclipse, selecione o item Help do menu principal, logo após o subitem "Install New Software".
Clique no botão "ADD..." para adicionar o site.
Adicione o Google plugin for Eclipse, no meu caso utilizei o site http://dl.google.com/eclipse/plugin/3.5.
Selecione todas as opções (Google Plugin Eclipse, Google App Engine Java e Google Web Toolkit).
Repita a operação adicionando o site do ADT (Android Development Tools) digitando o endereço https://dl-ssl.google.com/android/eclipse/ e adicione ambos os pacotes.
Configure o Android selecionando o item Windows e clique na opção preferences.
Configure a localização do SDK e clique no botão "APPLY".
Pronto, nesta etapa o seu Eclipse está configurado com sucesso.
$ tar -zxvf android-sdk_r04-linux_86.tgz
$ cd android-sdk-linux_86/tools
$ ./android
Sugiro adicionar na variável ambiental PATH a pasta TOOLS do pacote Android SDK. Basta inserir no arquivo ~/.bashrc uma linha informando a localização das ferramentas do Android. A seguir um exemplo da linha a ser adicionada:
export PATH=${PATH}:<pasta de instalação do android>/tools
Ao executar o comando ./android, se tudo estiver funcionando corretamente, teremos um formulário similar ao da figura abaixo:
Instalação do Eclipse
A instalação do Eclipse pode ser efetuada no link http://www.eclipse.org/downloads/, com a extração do .tar.gz ou a utilização do YaST (na distribuição OpenSUSE) e seleção dos pacotes RPM. Selecione primeiramente o pacote eclipse e pressione o botão Aceitar.No meu caso estou utilizando o Eclipse 3.5. Entretanto na página oficial do Android é mencionada a compatibilidade com diversas versões. Para iniciar a instalação do plugin ADT, abra o Eclipse, selecione o item Help do menu principal, logo após o subitem "Install New Software".
Criando o primeiro Hello Word
Para criar uma aplicação Android no Eclipse, selecione a opção "File" do menu principal, depois a opção "New" e logo após clique em "Project". A seguir, selecione o item "Android Project" e clique no botão "Next".
Na janela de diálogo do projeto, digite o nome do projeto, nome do pacote, nome da classe e o nome da aplicação. Selecione as opções "Create new project in workspace" e clique em "Use default location", finalize clicando no botão "Finish".
Se tudo estiver funcionando corretamente, o código abaixo foi criado no nosso projeto HelloAndroid:
Modifique o código inserindo as seguintes linhas como no exemplo do fonte a seguir:
Para executar o programa no emulador do Android, basta selecionar o item "Run" do menu principal, depois a opção "Run...". Na janela de dialogo, selecione o item Android Application e clique no botão OK.
O emulador será iniciado, e logo a seguir veremos o nosso primeiro programa em ação no Android. Na figura abaixo, a tela do programa HelloWord for Viva O Linux and pt.opensuse.org.
Para quem deseja ter contato com o Android, acredito que este documento seja um bom ponto de partida para uma longa caminhada de aprendizado.
Para finalizar, sugiro também o artigo publicado na Linux Magazine, também disponibilizado como dica no VOL:
Como diz o Prof. Pietro Ubaldi:
"O próximo grande salto evolutivo da humanidade será a descoberta de que cooperar é melhor que competir"
package com.android.hello;
import android.app.Activity;
import android.os.Bundle;
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
import android.app.Activity;
import android.os.Bundle;
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
Modifique o código inserindo as seguintes linhas como no exemplo do fonte a seguir:
package com.android.hello;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid 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);
}
}
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid 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);
}
}
Para executar o programa no emulador do Android, basta selecionar o item "Run" do menu principal, depois a opção "Run...". Na janela de dialogo, selecione o item Android Application e clique no botão OK.
Para finalizar, sugiro também o artigo publicado na Linux Magazine, também disponibilizado como dica no VOL:
Como diz o Prof. Pietro Ubaldi:
"O próximo grande salto evolutivo da humanidade será a descoberta de que cooperar é melhor que competir"
- Login automático com SSH e Automatização da instalação (deploy) e atualização de sites com GitLinux
- Extensão Sun Presentation Minimizer para Broffice.ORGLinux
- Otimização de Desempenho em sistemas GNU/LinuxLinux
- Hardware para sistemas GNU/Linux - Dicas de Desempenho - Parte 3Hardware
- Hardware para sistemas GNU/Linux - Dicas de Desempenho - Parte 2Hardware