Desenvolvimento de Aplicações Android
Programação com o SDK do Google
Descrição do livro
Este livro apresenta, de forma aprofundada, os conceitos e códigos necessários para iniciar a criação de aplicações smartphone com o ambiente de programação do Android, a plataforma de código-fonte aberto mais popular disponível para desenvolvimento de aplicações móveis. Desenvolvimento de aplicações Android apresenta ao leitor esse ambiente — incluindo o sistema operacional e o SDK — e fornece exemplos práticos com explicações detalhadas para demonstrar os recursos de arquitetura e as APIs do Android.
Com este livro, você poderá:
- Gerar aplicações Android que aproveitem todas as funcionalidades principais disponíveis em dispositivos móveis da atualidade;
- Criar uma aplicação modular completa que empregue elementos da interface de usuário do Android;
- Aprender os conceitos e a arquitetura de um conjunto de recursos que inclui views (exibições), mapas, serviços baseados em localização, armazenamento de dados persistentes, serviços de telefonia, e comunicação entre processos;
- Aplicar códigos prontos para execução na implementação de cada recurso;
- Saber mais sobre tópicos avançados, como gráficos 2D e 3D, depuração e análise de desempenho.
Este livro é um complemento ideal para a documentação do Android. Se você deseja desenvolver uma aplicação comercial para smartphones ou um mashup móvel para uso pessoal, Desenvolvimento de aplicações Android mostra como projetar, construir e testar aplicações inovadoras, portáveis e lucrativas.
Público-alvo: destinado a desenvolvedores de software experientes que desejam desenvolver aplicações no ambiente móvel do Android. Ele pressupõe que você tenha alguma experiência com a linguagem de programação Java e com o uso do Java para implementar interfaces de usuário e que você esteja pelo menos familiarizado com as tecnologias empregadas pelo Android, como XML, SQL, GTalk(XMPP), OpenGL-ES e HTTP.
Depoimento:
“Havia algum tempo em que eu não via um livro tão bem escrito. A característica mais notável da obra é a atenção aos detalhes.” Hycel Taylor, consultor de arquitetura em J2EE especializado em start-ups (inicializações) Ver menos ▲
Sumário
- Apresentação do kit de desenvolvimento
- Capítulo 1 ■ Introdução ao Android
- Por que o Android?
- A Open Alliance Handset
- O ambiente de execução do Android
- Componentes de uma aplicação Android
- Ciclo de vida de Atividade do Android
- Ciclo de vida de Serviço do Android
- Como este livro é organizado
- Capítulo 2 ■ Configurando seu ambiente de desenvolvimento Android
- Configurando seu ambiente de desenvolvimento
- Criando um ambiente de desenvolvimento do Android
- Hello, Android!
- Onde estamos indo
- Inicialização de uma nova aplicação Android: HelloWorld
- Programando HelloWorld
- Executando HelloWorld
- Configurando seu ambiente de desenvolvimento
- Capítulo 3 ■ Usando o ambiente de desenvolvimento Android em aplicações reais
- MicroJobs: a principal aplicação-exemplo deste livro
- Android e rede social
- Download do código-fonte do MJAndroid
- Uma breve apresentação do código MJAndroid
- A pasta-raiz do projeto (MJAndroid)
- A pasta de origem (src)
- A pasta de recursos (res)
- Primeiros passos: compilação e execução da aplicação MicroJobs
- Um breve panorama do SDK do Android/IDE do Eclipse
- Carregamento e inicialização da aplicação
- Uma exploração mais aprofundada: o que pode dar errado?
- Executando uma aplicação em um aparelho T-Mobile
- Resumo
- Capítulo 4 ■ Nos bastidores: código de inicialização e recursos da aplicação MJAndroid
- Parâmetros de inicialização em AndroidManifest xml
- Inicialização em MicroJobs java
- Inicialização adicional de MicroJobs java
- Resumo
- Capítulo 5 ■ Depuração de aplicações Android
- Ferramentas
- Editor de Java do Eclipse
- Erros de Java
- Depurador
- Logcat
- Android Debug Bridge (adb, Ponte de Depuração do Android)
- tor Service)
- Traceview
- Resumo
- Capítulo 6 ■ A aplicação ApiDemos
- Configuração da aplicação no arquivo-manifesto
- Localizando o código-fonte de um exemplo interessante
- Técnica 1: Demo Custom Title (Título Personalizado)
- Técnica 2: Demo Linkify
- Adicionando seus próprios exemplos em ApiDemos
- Capítulo 7 ■ Assinando e publicando sua aplicação
- Teste sua aplicação
- Anexe um acordo de licença de usuário final, se desejado
- Crie e anexe um ícone e um rótulo
- Limpe o código para o lançamento ao público
- Informe a versão de sua aplicação
- Obtendo um certificado de assinatura e uma Chave de API
- Obtendo um certificado de assinatura durante a depuração
- Assinatura de sua aplicação
- Testando novamente sua aplicação
- Publicando no Android Market
- Cadastrando-se como um desenvolvedor Android
- Carregando (uploading) sua aplicação
- Tópicos de programação
- conteúdo
- Bancos de dados
- Estrutura básica da classe MicroJobsDatabase
- Lendo dados do banco de dados
- Modificando o banco de dados
- Provedores de conteúdo
- Apresentando o NotePad
- Provedores de Conteúdo
- Consumindo um Provedor de Conteúdo
- Capítulo 9 ■ Localização e mapeamento
- Serviços baseados em localização
- Mapeamento
- A Atividade Google Maps
- MapView e MapActivity
- Trabalhando com MapViews
- Inicialização de MapView e MyLocationOverlay
- Interrupção e retomada de uma MapActivity
- Controlando o mapa com botões de menu
- Controlando o mapa com o teclado
- Localização sem mapas
- Os arquivos de manifesto e de layout
- Atualizando a localização emulada
- Capítulo10 ■ Construindo uma View
- Arquitetura de GUI do Android
- O Modelo
- A View
- Controlador
- Juntando tudo
- Montando uma interface gráfica
- Conectando o Controlador
- Escutando o Modelo
- Escutando eventos de toque
- Escutando eventos de tecla
- Formas alternativas para manipular eventos
- Conexão avançada: foco e threading
- O menu
- Arquitetura de GUI do Android
- Capítulo 11 ■ Um bestiário de widgets
- Views do Android
- TextView e EditText
- Button e ImageButton
- Adapters e AdapterViews
- CheckBox, RadioButton e Spinner
- ViewGroups
- Gallery e GridView
- ListView e ListActivity
- ScrollView
- TabHost
- Layouts
- Frame Layout
- LinearLayout
- TableLayout
- AbsoluteLayout
- RelativeLayout
- Views do Android
- Capítulo 12 ■ Criação de gráficos em 2D e 3D
- Definindo seus próprios widgets
- Layout
- Desenho de canvas
- Drawables
- Bitmaps
- Bling
- Sombras, gradientes e filtros
- Animação
- Gráficos OpenGL
- Definindo seus próprios widgets
- Capítulo 13 ■ Comunicação entre processos
- Intenções: IPC simples e de baixo custo
- Objetos Intent usados na comunicação entre processos
- Objetos Activity e navegação na hierarquia de interface do usuário
- Exemplo: uma Intenção que captura como dissemos “Hello World”
- Obtendo um resultado por meio da comunicação entre processos
- Métodos remotos e AIDL (Android’s Interface Definition Language)
- Linguagem de definição de interface do Android
- Classes subjacentes às interfaces geradas pela AIDL
- Publicando uma interface
- IPC do Android comparada à Java Native Interface (JNI)
- O que o Binder não faz
- Binder e Linux
- Intenções: IPC simples e de baixo custo
- Capítulo 14 ■ Chamadas telefônicas simples
- Chamadas telefônicas rápidas e fáceis
- Criando uma aplicação de exemplo para executar o método call
- Integrando o trecho de código a uma aplicação simples
- Explorando o código de telefone com o depurador
- Criando uma instância de uma Intenção
- Adicionando dados a uma instância de uma Intenção
- Iniciando uma chamada telefônica
- Tratamento de exceções
- Modularidade e telefonia em nível de aplicação do Android
- Operações oferecidas pelo pacote android telephony
- Resumo do pacote
- Limitações do que as aplicações podem fazer com o telefone
- Exemplo: determinação do estado de uma chamada
- Componentes internos da telefonia do Android
- O pacote android internal telephony
- O pacote android internal telephony gsm
- Explorando os componentes internos de telefonia do Android
- Android e VoIP
- Chamadas telefônicas rápidas e fáceis
- Apêndice ■ Protocolos sem fio
- Pré-história
- O surgimento dos celulares digitais de segunda geração (2G)
- Celular digital aperfeiçoado (2.5G)
- O surgimento do 3G
- O futuro: 4G
- Índice remissivo
Sobre os autores
Engenheiro profissional de software integrado há mais de 30 anos, atualmente atua como arquiteto de soluções móveis na Wind River Systems.… Ver perfil completo ▶
Autor de Linux Embedded (SAMS), trabalhou em vários produtos Linux integrados, incluindo roteadores IPSEC e NAT com base em ARM7. … Ver perfil completo ▶
Zigurd Mednieks trabalha como consultor para OEMs, empresas e empreendimentos importantes na criação de sistemas baseados em Android.… Ver perfil completo ▶
G. Blake Meike é um desenvolvedor veterano com ampla experiência na criação de aplicativos Java para diversas plataformas móveis e no lado servidor. Desenvolveu aplicações usando a maioria dos kits de GUI e várias das plataformas de dispositivos móveis Java.… Ver perfil completo ▶
Opinião dos leitores
Fernando B R
Livro sai na frente e ótima iniciativa.
