14/09/11 ENUCOMP - 2011
Apresentação Cândido Sales  Estudante do IFPI; Membro do LIMS; @candidosales [email_address] Lucas Aquiles Estudante do IFPI; @lucas_aquiles [email_address] Apresentação 14/09/11 ENUCOMP - 2011
Introdução a Computação móvel 14/09/11 ENUCOMP - 2011
Computação Móvel Realizada em dispositivos portáteis que sejam capazes de acessar uma rede sem fio. Por usuários móveis (com diferentes velocidades) Acesso à informação a qualquer lugar, a qualquer momento  Termos relacionados: –  Computação Pervasiva –  Computação Ubíqua 14/09/11 ENUCOMP - 2011
Dos Mainsframes à computação móvel 14/09/11 ENUCOMP - 2011
Computação Pervasiva Computação Pervasiva: acesso conveniente a informações relevantes e a habilidade de realizar ações sobre as mesmas quando e onde for necessário (IBM). “ Espalhada por todos os lugares” 14/09/11 ENUCOMP - 2011
Computação Pervasiva Projeto Everywhere Display (IBM) –  Qualquer superfície pode se tornar em uma projeção do tipo “touch screen” 14/09/11 ENUCOMP - 2011
Computação Ubíqua Computação Ubíqua: –  onipresença da informática no cotidiano das pessoas (Wikipédia) –  ... tornam-se parte da nossa vida de forma que não os percebemos mais (Mark Weiser) –  Baseia-se na detecção de gestos, movimentos, fala, movimentação dos olhos... 14/09/11 ENUCOMP - 2011
Computação Ubíqua Ex: Casa do “futuro”: •  Sistema automático de iluminação •  Sistemas de extinção e prevenção de incêndios •  Monitoramento de saúde dos ocupantes da casa •  Geladeira que perceba variações de estoque e validade dos produtos •  Celular que envia dados de “coletados” a uma central médica 14/09/11 ENUCOMP - 2011
14/09/11 ENUCOMP - 2011  Computação Ubíqua
Juntando tudo 14/09/11 ENUCOMP - 2011
Princípios da Computação Móvel Descentralização Diversificação Conectividade Simplicidade 14/09/11 ENUCOMP - 2011
Princípio da Descentralização Um passo além da descentralização dos sistemas distribuídos; Uma grande variedade de pequenos dispositivos cooperam estabelecendo uma rede dinâmica de relacionamentos; A habilidade de utilizar aplicações e informações em dispositivos móveis gera a necessidade de sincronização de atualizações de dados com sistemas servidores e outros dispositivos. 14/09/11 ENUCOMP - 2011
Princípio da Diversificação Mesma informação em diferentes “modelos” 14/09/11 ENUCOMP - 2011
Princípio da Conectividade Uma grande variedade de tecnologias deve ser atendida: –  redes celulares, WLANs, Bluetooth, IrDA, WiMax, comunicação via satélite, etc. . . Não basta apenas conectar os dispositivos: –  Troca de dados –  Descoberta de serviços –  Delegação de tarefas 14/09/11 ENUCOMP - 2011
Princípio da Simplicidade Computadores de uso geral: configuração complexa “ Computadores” móveis: mais específicos e mais simples em configuração Simples não significa primitivo: –  telas touch-screen, –  reconhecimento de escrita, –  reconhecimento de voz –  etc 14/09/11 ENUCOMP - 2011
Requisitos de Aplicação •  Infra-estrutura: - Cobertura(indoor, outdoor, acesso a alta/baixa velocidade) - Qualidade da comunicação - Confiabilidade e estabilidade da comunicação - Segurança •  Dispositivo Móvel –  Forma de interação (grafico, textual, voz) –  Capacidade de identificar localização –  Capacidade de processamento e armazenamento locais •  Serviços Middleware –  Suporte à criptografia e autenticação –  QoS (Quality of Service) –  Descoberta e adaptação a novos serviços e recursos 14/09/11 ENUCOMP - 2011
Aceitação das Tecnologias Tempo para atingir 1 milhão de usuários: –  TV preto-banco: 20 anos –  TV em cores: 9 anos –  VCR: 8 anos –  PC: 6 anos –  Celular: 2 anos e meio Dos 128 milhões de PCs vendidos em 2001, 22% eram laptops e este percentual tem crescido 1 a 2 pontos por ano desde 1999; Acessos à Internet por meio de dispositivos móveis ultrapassou os acessos convencionais (PC e Browser) desde meados de 2002. 14/09/11 ENUCOMP - 2011
Algumas aplicações de computação móvel Négocios diversos: m-commerce e m-business •  Acesso à Internet por viajantes: transferência de arquivos, Web, acesso remoto…; •  Comércio: vendedores ambulantes; •  Tratamento Médico emergencial: transmissão do prontuário de/para ambulância (ou local do acidente); •  Segurança: consulta e obtenção de ficha criminal; •  Seguradoras: avaliação de sinistro; •  Serviços de resgate: coordenação das atividades de resgate; •  Aplicações Militares: coordenação de ações; Gerenciamento de frota e Gerenciamento de bens; 14/09/11 ENUCOMP - 2011
Serviços baseados em localização Serviços de emergência: usuários entram em contato com uma central (E911) e é localizado; •  Informações de tráfego; •  Navegação: Como ir do ponto A ao ponto B? •  Gerenciamento de frota; •  Gerenciamento de bens; •  Publicidade sem fio: usuários podem subscrever serviços que os notifiquem a respeito de certos produtos quando adentrarem uma dada região; •  Serviços de busca: restaurantes, postos de gasolina, hotéis próximos; •  Localização automática de veículos; •  Mapas; •  Informações de trânsito; •  Jogos. 14/09/11 ENUCOMP - 2011
Impacto da Computação Móvel Representa um novo paradigma computacional,ampliando os conceitos da computação distribuída –  Áreas com diversas implicações: Redes de Computadores Sistemas Operacionais Banco de Dados Ambientes de Programação etc. . . Mudanças sociais? 14/09/11 ENUCOMP - 2011
Difusão da Tecnologia celular 14/09/11 ENUCOMP - 2011
14/09/11 ENUCOMP - 2011  Difusão da Tecnologia celular
Difusão da Tecnologia celular 14/09/11 ENUCOMP - 2011
14/09/11 ENUCOMP - 2011  Difusão da Tecnologia celular
Difusão da Tecnologia celular 14/09/11 ENUCOMP - 2011
14/09/11 ENUCOMP - 2011  Difusão da Tecnologia celular
14/09/11 ENUCOMP - 2011  Difusão da Tecnologia celular
14/09/11 ENUCOMP - 2011  Difusão da Tecnologia celular
14/09/11 ENUCOMP - 2011  Difusão da Tecnologia celular
14/09/11 ENUCOMP - 2011  Difusão da Tecnologia celular
Visão Geral III SACIC - 2011  14/09/11 ENUCOMP - 2011
Roteiro Mundo mobile O que é o Android; Open Handset Alliance; Android e os competidores; Por que Linux no Android?; Dalvik Virtual Machine; Instalando as ferramentas do Android; Projeto “Meu HelloWord” Componentes; 14/09/11 ENUCOMP - 2011
Mundo mobile Mercado de celulares Usuários querem mais recursos em seus dispositivos Aplicações móveis no mundo coorporativo Necessidade de plataformas mais modernas para desenvolvimento de aplicações no auxilio de seus negócios e lucros. 14/09/11 ENUCOMP - 2011
O que é Android? Sistema operacional baseado no kernel do Linux; Possui uma implementação da JVM – Dalvik; Código aberto e livre; Plataforma flexível e poderosíssima de desenvolvimento Customizavel 14/09/11 ENUCOMP - 2011
Android e os competidores IPhone JME Symbiam BlackBerry WindowsMobile 14/09/11 ENUCOMP - 2011
Porque Linux no android? Construída sob o kernel 2.6 do Linux Gerencia memória e processos Abstração de hardware Usuários não vêem o Linux e seus programas não fazem chamas diretas a ele. Suporte a gráficos 3D, especificação 1.0 da OpenGL ES, possível criar jogso com ótima qualidade. 14/09/11 ENUCOMP - 2011
Open Handset Alliance União entre grandes da telefonia liderados pelo Google (OHA –  Open Handset Alliance ) Definir uma plataforma única e aberta Plataforma moderna e flexível para desenvolvimento de aplicações Fabricantes, Usuários e Desenvolvedores se beneficiam com o grupo 14/09/11 ENUCOMP - 2011
Dalvik Virtual Machine JVM ótimizada para execução de dispositivos móveis – Dalvik Bytecodes (arquivo .class) são convertidos em  arquivo .dex (Dalvik Executable) – Aplicação android compilada Compactação dos arquivos .dex e recursos como imagens em arquivos .apk (Android Package File) – Aplicação Final 14/09/11 ENUCOMP - 2011
Instalando as ferramentas do Android Requisitos Java SDK Android SDK Eclipse IDE Plugin ADT 14/09/11 ENUCOMP - 2011
Configuração do ambiente Escolher a versão do JDK 2.Aceite os termos 3.Escolher a versão para seu S.O 14/09/11 ENUCOMP - 2011
Configuração do ambiente Instalação do JDK no Linux (Ubuntu) Com o comando  apt-get : sudo apt-get install openjdk-6-jdk && sudo apt-get install sun-java6-jdk Após a instalação entre via console e digite:  java –v A saída deve ser a versão do java instalado. 14/09/11 ENUCOMP - 2011
Instalação do Android SDK 1. no site  www.android.com  escolher a opção developers 14/09/11 ENUCOMP - 2011
Instalação do Android SDK 2. Escolha a opção SDK 3. Baixe o android SDK de acordo com o seu S.O A versão atual é a 3.2 (para tablet) e 2.3.3 (para smartphone) 14/09/11 ENUCOMP - 2011
Instalação do Android SDK Localize o arquivo e descompacte-o. No windows basta executar o arquivo “SDK Manager.exe” localizado na pasta raiz do sdk No linux ou Mac, acesse pelo terminal a pasta raiz do sdk e execute o comando ./tools/android 14/09/11 ENUCOMP - 2011
Instalação do Android SDK irá aparacer o Android SDK e o AVD ( android vitual device ) Manager. 14/09/11 ENUCOMP - 2011
Instalação do Android SDK Vá em “Available Packages”, marque a opção “AndroidRepository” e clique em “Install Selected” 14/09/11 ENUCOMP - 2011
Instalação do Android SDK Uma lista com todos os componentes disponíveis, incluindo documentação, plataformas, add-on, bibliotecas será exibida. 14/09/11 ENUCOMP - 2011
Instalação do Android SDK Caso ocorra algum erro de HTTPS SSL, vá em "settings“, marque a opção "Force https:// sources to be fetched using http://" e clique em "Save & Apply". 14/09/11 ENUCOMP - 2011
Instalação do Android SDK Aceite todos e clique em “install” 14/09/11 ENUCOMP - 2011
Instalação e Configuração do Eclipse IDE 1. Acesse o site  www.eclipse.org  e vá na sessão “Downlods” 2. Escolha a versão do Eclipse IDE for Java Developers 14/09/11 ENUCOMP - 2011
Instalação e Configuração do Eclipse IDE Faça o download 14/09/11 ENUCOMP - 2011
Instalação e Configuração do Eclipse IDE Após o download localize o arquivo , descompacte-o e execute o arquivo “eclipse.exe” No ubunto é apenas “eclipse” 14/09/11 ENUCOMP - 2011
Instalação do plugin ADT Inicie o eclipse e vá em “ help ”, “ install new software ” 14/09/11 ENUCOMP - 2011
Instalação do plugin ADT Clique em  add  e uma nova janela irá aparecer Em “name” coloque “ADT Plugin” e em “location” adicione  https://dl-ssl.google.com/android/eclipse/  e clique em “ok” 14/09/11 ENUCOMP - 2011
Instalação do plugin ADT Selecione “ADT Plugin” na lista de sites, marque a opção “Developers Tools”  e clique em “next”. 14/09/11 ENUCOMP - 2011
Instalação do plugin ADT Irá aparecer uma lista com todos os item a serem instalados. Clique em "Next" novamente. Na próxima tela, escolha a opção " I accept the the terms of the licence agreements " e clique em 'Finish'. Após o processo de instação do plugin o Eclipse irá reiniciar. 14/09/11 ENUCOMP - 2011
Instalação do plugin ADT Quando o Eclipse IDE iniciar uma mensagem de erro irá aparecer, porque a IDE não consegue localizar o Android SDK Vá em Window, Preferences, Android. Clique em 'Browse..‘, selecione a raiz do SDK e clique em 'OK‘. 14/09/11 ENUCOMP - 2011
Criando uma ADV Abra o “SDK e ADV Manager” e em Virtual Devices clique em “new” 14/09/11 ENUCOMP - 2011
Criando uma ADV Adicione as informações como na imagem e clique em “Create ADV” 14/09/11 ENUCOMP - 2011
Criando uma ADV Criamos uma ADV com o nome “enucomp” Que possui o firmeware 2.2 e também possui o Secure Digital Card (SD) e o Skin Default Half-VGA – HVGA (320 x 480) 14/09/11 ENUCOMP - 2011
Pronto! Nosso ambiente está pronto para desenvolvimento. 14/09/11 ENUCOMP - 2011
Projeto “Meu HelloWord” O plugin ADT vem com uma aplicação HelloWord de exemplo, vamos usá-la Vá em “file” > “Project” > “new project”. Vá em “android” > “android project” e clique em “next” Em Project Name digite: HelloAndroid No Build Target: Android 2.2 Application Name : Hello, Android Package name: br.ifpi.edu.hello Create Activity: Hello E clique em “finish” 14/09/11 ENUCOMP - 2011
Projeto “Meu HelloWord” Um estrutura de diretórios como a mostrada abaixo será criada 14/09/11 ENUCOMP - 2011
Projeto “Meu HelloWord” Para executar clique com o botão direito em cima do projeto e escolha “run as” > “android application” 14/09/11 ENUCOMP - 2011
Projeto “Meu HelloWord” 14/09/11 ENUCOMP - 2011
Activity III SACIC - 2011  14/09/11 ENUCOMP - 2011
Activity Uma tela pode ser criada de duas formas: –  Em um arquivo XML –  Direto em um arquivo Java usando a sua API android.app.Activity: –  Similar à classe JFrame do Swing –  Representa, à priori, uma tela da aplicação –  Composta por vários componentes representados pela classe andoid.view.View (botões, checkboxes, imagens) –  Controla a passagem de parâmetros para outra tela –  Define métodos para tratar eventos dos componentes 14/09/11 ENUCOMP - 2011
Activity 14/09/11 ENUCOMP - 2011
View São componentes simples (botões, checkboxes, imagens) ou componentes compostos –  Atuam como gerenciadores de layout –  Podem conter várias views filhas (outro componentes) O arquivo main.xml é um arquivo de layout padrão Vários layouts podemser definidos 14/09/11 ENUCOMP - 2011
Setando a View Principal O médoto setContentView faz a ligação entre a activity e a view A view passada como parâmetro está definida no arquivo main.xml (pode ser mudado) –  é referenciada via o arquivo R.java como uma constante 14/09/11 ENUCOMP - 2011
A classe R 14/09/11 ENUCOMP - 2011
AndroidManifest.xml Base da aplicação e semelhante ao web.xml de aplicações WEB 14/09/11 ENUCOMP - 2011
AndroidManifest.xml As Activities devem ser definidas no arquivo Para que o usuário possa interagir, pelo menosuma Activity deve ser definida no arquivo A configuração de uma Activity como ponto de partida para a aplicação é ilustrada abaixo: 14/09/11 ENUCOMP - 2011
Criação de interface via Java Pode-se definir uma interface visual via codificação java 14/09/11 ENUCOMP - 2011
Referenciando componentes Sempre que possível, atribua um ID aos componentes 14/09/11 ENUCOMP - 2011
Referenciando componentes Adicionar IDs aos componentes permitem acesso via codificação 14/09/11 ENUCOMP - 2011
Tratando o clique de um botão Para tratar eventos de um botão, deve-se: –  Obter o componente pelo ID –  Instanciar um listener –  Setar o listener no botão –  Implementar o método onClick 14/09/11 ENUCOMP - 2011
Exemplo 14/09/11 ENUCOMP - 2011
Gerando Logs 14/09/11 ENUCOMP - 2011
Gerando Logs Usa-se a classe Log e seus métodos estáticos: 14/09/11 ENUCOMP - 2011
Componentes III SACIC - 2011  14/09/11 ENUCOMP - 2011
Roteiro ScrollView; MapView; ListView; ImageView; ContextMenu; Autocomplete; Tables; Buttons (ImageButton, GroupButton, Button); “ CSS”; Tratamento de eventos Apresentação de exemplos 14/09/11 ENUCOMP - 2011
ScrollView A classe android.widget.ScrollView deve ser utilizada para telas que contêm muitos elementos e nas quais seja necessário fazer a rolagem da tela. Exemplo exemplo_scrollview.xml ExemploScrollView 14/09/11 ENUCOMP - 2011
MapView Para visualização de mapas; Para utilizar um MapView, basta definir a tag <com.google.android.maps.MapView> e informar no atributo android:apiKey uma chave de autenticação válida para o Google Maps. Exemplo Mapview.xml MapaSimplesXML 14/09/11 ENUCOMP - 2011
ListView Desenha os componentes em uma lista vertical e com barra de rolagem (scroll), se necessário. Necessita da classe android.app.ListActivity, uma acitivy especial para exibir uma lista de itens na vertical. Exemplo Prático!  Pág. 113 14/09/11 ENUCOMP - 2011
ImageView Apresenta uma imagem que você selecionou. 14/09/11 ENUCOMP - 2011
Context Menu Menu contextuado que pode ser utilizado em qualquer momento de sua aplicação. Exemplo Pág 253 14/09/11 ENUCOMP - 2011
Autocomplete Um recurso muito usado em aplicações web São campos de texto que podem completar automaticamente o texto que o usuário está digitando. Para usar o AutoCompleteTextView é necessário chamar o método setAdapter(adaptador) e informar sua implementação de ListAdapter. Exemplo Pág 221 14/09/11 ENUCOMP - 2011
Tabs Conceitos TabHost  – Componente que agrupa os butões e o contéudo TabWidget  – Grupa em linha os butões que possuem labels e ícones (opcional) FrameLayout  – Agrupa o conteúdo de uma aba 14/09/11 ENUCOMP - 2011
Tabs Estrutura 14/09/11 ENUCOMP - 2011
Usando TabActivity Crie uma nova Activity que extenda de TabActivity e implementa as interfaces OnTabChangeListener e TabContentFactory 14/09/11 ENUCOMP - 2011
Usando TabActivity Crie dois novos layouts xml do android com os nomes tab1.xml tab2.xml e adicione um TextView a cada layout E altere o setContentView() das activitys Tab1.class e Tab2.class para eles. 14/09/11 ENUCOMP - 2011
Nova tab pelo XML do Android Crie um novo layout XML -  tabs.xml Crie uma nova acvitivy - Tabs.java que estenda de Activity Adicione a activity ao AndroidManifest.xml Altere o método  setContentView(R.layout.tabs)) 14/09/11 ENUCOMP - 2011
Nova tab pelo XML do Android Sua activity deve está assim 14/09/11 ENUCOMP - 2011
Nova tab pelo XML do Android Altere o arquivo tab.xml 14/09/11 ENUCOMP - 2011
Nova tab pelo XML do Android Altere o arquivo Tab.java 14/09/11 ENUCOMP - 2011
Nova tab pelo XML do Android Altere o arquivo AndroidManifest para que a activity Tabs.java seja iniciada no início da aplicação 14/09/11 ENUCOMP - 2011
Buttons As classes android.widget.Button e android.widget.ImageButton são utilizadas para criar um botão na tela. A diferença é que a classe ImageButton permite usar uma imagem para desenhar no botão. Exemplo Pág 223 14/09/11 ENUCOMP - 2011
“ CSS” Podemos utilizar os arquivos XML como extensões de estilos que podem ser reutilizados em vários layouts, sem necessitar a repetição de código. Exemplo Guia Turistico 14/09/11 ENUCOMP - 2011
Ciclo de vida III SACIC - 2011  14/09/11 ENUCOMP - 2011
17/05/11 III SACIC - 2011  Ciclo de vida de uma activity 14/09/11 ENUCOMP - 2011
17/05/11 III SACIC - 2011  onCreate : –  Obrigatório e chamado uma única vez. –  Deve-se setar a view •  onStart : é chamado quando uma activity está ficando visível e já tem uma view definida •  onRestart: chamado quando uma activity foi parada temporariamente e está retornando à execução •  onResume : –  Quando uma activity está executando. –  Pode ser chamada também para recuperação de dados quando foi interrompida e volta a execução Ciclo de vida de uma activity 14/09/11 ENUCOMP - 2011
17/05/11 III SACIC - 2011  onPause : chamado quando a activity está sendo tirada do topo da execução. Usado para salvar o estado da aplicação onStop : –  A aplicação não está mais visível e está em segundo plano. –  Caso fique por muito tempo em 2o Plano e falte recursos, o S.O. pode remover completamente da pilha de execução onDestroy : encerra literalmente a activity Ciclo de vida de uma activity 14/09/11 ENUCOMP - 2011
Activities x Intents III SACIC - 2011  14/09/11 ENUCOMP - 2011
Activities x Intents Activities são as &quot;telas&quot; Uma aplicação pode ter várias activities: –  geralmente independentes, –  contudo elas podem precisar se cooperar e trocar dados entre si Numa aplicação tradicional, uma activity deve ser definida como &quot;main&quot; e será executada ao rodar a aplicação Indo de uma activity para outra é possível pedindo para a atual executar uma intent 14/09/11 ENUCOMP - 2011
Intents 14/09/11 ENUCOMP - 2011
Intents android.content.Intent •  Representa uma mensagem da aplicação para o S.O. •  Solicita que algo seja realizado e serve para integrar aplicações •  Ex: –  Chamar outra tela (já visto) –  Solicitar que o S.O. ligue para um número; –  Abrir o browser em um determinado endereço –  Exibir algum endereço, localização ou rota num mapa –  Executar processamento em segundo plano –  Enviar mensagem para outras aplicações realizarem tarefas específicas 14/09/11 ENUCOMP - 2011
Intents São chamadas pelos métodos: startActivity(intent) = Executa uma activity starActivityForResult(intent) = Executa uma activity quepode retornar valores startService(intent) or bindService(intent, …) = Inicia ou se comunica comum serviço de segundo plano sendBroadcast(intent) = Envia uma intent que podeser &quot;capturada&quot; por serviçosespecíficos 14/09/11 ENUCOMP - 2011
Alguns tipos de Intents pré-definidos 14/09/11 ENUCOMP - 2011
Permissões Algumas intents necessitam de permissão explicita para executar Deve-se adicionar as permissões no arquivo AndroidManifest.xml 14/09/11 ENUCOMP - 2011
Usando Intents pré-definidas 14/09/11 ENUCOMP - 2011
Algumas permissões Permissão para executar navegação: INTERNET Ligações telefônicas: CALL_PHONE Leitura à lista de contatos: READ_CONTACTS 14/09/11 ENUCOMP - 2011
Intent chamar navegador Tipo ACTION_VIEW ... Uri uri = Uri.parse(&quot;http://www.android.com&quot;); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); ... É necessária a permissão INTERNET 14/09/11 ENUCOMP - 2011

Mais conteúdo relacionado

PDF
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 1
PDF
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2
PDF
Introdução a Programação de Dispositivos Móveis
PPTX
Arquitetura dos dispositivos móveis
PDF
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
PPTX
Arquitetura de dispositivos móveis
PDF
Desenvolvimento de aplicações para dispositivos móveis
PDF
Aula 1 - Introdução ao Mobile
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 1
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2
Introdução a Programação de Dispositivos Móveis
Arquitetura dos dispositivos móveis
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Arquitetura de dispositivos móveis
Desenvolvimento de aplicações para dispositivos móveis
Aula 1 - Introdução ao Mobile

Mais procurados (10)

PDF
Seminário sistemas operacionais móveis
PPSX
Android - Programação para dispositivos móveis (Aula 1)
PPTX
Teste para dispositivos móveis - EATS Manaus 2014
PPT
Dispositivos Móveis - Mobile
PDF
Arquitetura de Celulares
PDF
Dispositivos móveis
PDF
Aula: Características dos dispositivos móveis
PPT
Introdução a dispositivos móveis.
PPTX
Desenvolvendo aplicações móveis
PDF
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...
Seminário sistemas operacionais móveis
Android - Programação para dispositivos móveis (Aula 1)
Teste para dispositivos móveis - EATS Manaus 2014
Dispositivos Móveis - Mobile
Arquitetura de Celulares
Dispositivos móveis
Aula: Características dos dispositivos móveis
Introdução a dispositivos móveis.
Desenvolvendo aplicações móveis
O mercado atual e as tecnologias relacionadas a desenvolvimento para disposit...

Destaque (20)

PDF
Desenvolvimento de Aplicativos para a Plataforma Android
PPTX
Curso Android 01: Introdução
PPTX
Aula05 android persistencia
PDF
Curso de android
PPT
Curso Android Slide 5 Deploy - Wellington Pinto de Oliveira
PDF
Minicurso de Android Básico I - Dia 2
PDF
Google Cloud Messaging for Android
PPTX
Webinar: Usando o InduSoft Web Studio para Criar Gráficos HTML5 IHM/SCADA
PPTX
Aula07 android conectividade
PPT
Curso Android Slide 2 Introdução Plataforma - Wellington PInto de Oliveira
PPTX
Construindo sua primeira aplicação android
PPT
Redes de Computadores Capítulo 6 - Camada de Transporte
PPTX
Android Banco de Dados
PPTX
Computação Móvel 2012.2 - Android
PDF
Desenvolvendo para Android
PDF
Desenvolvendo Aplicativos com Android
PDF
Aulas Google Android
PPT
Instalação de Aplicativos Linux
PPTX
Android 02 - Recycler View Adapter
PDF
Descubra o potencial do seu smartphone Android
Desenvolvimento de Aplicativos para a Plataforma Android
Curso Android 01: Introdução
Aula05 android persistencia
Curso de android
Curso Android Slide 5 Deploy - Wellington Pinto de Oliveira
Minicurso de Android Básico I - Dia 2
Google Cloud Messaging for Android
Webinar: Usando o InduSoft Web Studio para Criar Gráficos HTML5 IHM/SCADA
Aula07 android conectividade
Curso Android Slide 2 Introdução Plataforma - Wellington PInto de Oliveira
Construindo sua primeira aplicação android
Redes de Computadores Capítulo 6 - Camada de Transporte
Android Banco de Dados
Computação Móvel 2012.2 - Android
Desenvolvendo para Android
Desenvolvendo Aplicativos com Android
Aulas Google Android
Instalação de Aplicativos Linux
Android 02 - Recycler View Adapter
Descubra o potencial do seu smartphone Android

Semelhante a Desenvolvimento de aplicações para a plataforma google android (20)

PDF
Palestra Mobilidade
PDF
Phonegap
KEY
Palestra Mobilidade - Computação móvel, dispositivos e aplicativos
PPT
Computacao Movel e Sem Fio
PDF
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2014
PDF
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
PDF
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
PPS
Android26.05
PDF
Desenvolvimento de Aplicações Móveis em Java - Parte 1
PPTX
Dispositivos Móveis Digrado
PPTX
Tecnologia Móvel - PUCSP
PDF
Minicurso de TotalCross e Litebase
PDF
Apresentacao jornada-unesp-2011
PDF
Desenvolvendo para Android com PhoneGap
PPT
Tendências Dispositivos Móveis 2010
PPTX
Ciclo de palestras da JFRJ - Aplicativos Móveis
PDF
Introdução a programação em Android
PDF
PPTX
Curso Corona SDK - Módulo 1
PDF
Curso de Google Android - Aula 1
Palestra Mobilidade
Phonegap
Palestra Mobilidade - Computação móvel, dispositivos e aplicativos
Computacao Movel e Sem Fio
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2014
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos 2013
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
Android26.05
Desenvolvimento de Aplicações Móveis em Java - Parte 1
Dispositivos Móveis Digrado
Tecnologia Móvel - PUCSP
Minicurso de TotalCross e Litebase
Apresentacao jornada-unesp-2011
Desenvolvendo para Android com PhoneGap
Tendências Dispositivos Móveis 2010
Ciclo de palestras da JFRJ - Aplicativos Móveis
Introdução a programação em Android
Curso Corona SDK - Módulo 1
Curso de Google Android - Aula 1

Mais de Lucas Aquiles (14)

PDF
Open talk micronaut
PPTX
Best practices in pair programming
PPTX
Pocket Talk - Onde vivem os vegans?
PPTX
Pocket Talk - Mob programming
PPTX
google maps api - v1
PPTX
Criando app mobile com Google Android - Software Freedom Day 2015
PDF
Oficina groovy grails - infoway
PDF
Minicurso javascript
ODP
ODP
ODP
Groovy grails
ODP
ODP
Produtividade na web_com_groovy_e_grails_pt2
ODP
Orm android
Open talk micronaut
Best practices in pair programming
Pocket Talk - Onde vivem os vegans?
Pocket Talk - Mob programming
google maps api - v1
Criando app mobile com Google Android - Software Freedom Day 2015
Oficina groovy grails - infoway
Minicurso javascript
Groovy grails
Produtividade na web_com_groovy_e_grails_pt2
Orm android

Último (20)

PDF
wp-sn-advanced-high-availability-architecture (pt-br).pdf
PPTX
AULA 1.pptx GESTÃO DE OPERAÇÕES INDUSTRIAIS
PPTX
Modelo para Qualificação de Mestrado - Tecnologia da Informação
PPTX
Panorama da aviação civil brasileira ANAC
DOCX
20250828_Perfis Profissionais em ServiceNow Um Guia Detalhado.docx
PDF
pdfcoffee.com_metalografia-25-pdf-free.pdf
DOCX
Laboratório de cyber security, apresentação simples.
PPTX
Google saiba mais sobre o google e suas funcionalidades
PDF
POO - Aula 05 - Herança - Generalização e Especialização.pdf
PPTX
Importacao_Ordem_Customizacao_SAP_S4HANA.pptx
PDF
Gestão contínua de exposição a ameaças petrobras
PDF
T-pico 1.pdfnsjabdkaksbbsuendnijsbshajanzk
PDF
POO - Aula 05 - Herança - Generalização e Especialização.pdf
PPTX
Legislação aeronautica na aviação civil Brasileira
PPTX
Introdução a disciplina sistemas operativos
PPTX
Sistemas Operativos Modulo 2_________________
PPTX
RCSOFTdfsdfrvadfvdfvargfvevevrervevqer.pptx
PDF
Arquitetura de Software slides sommerville
PPTX
Introdução a Computação em Nuvem-parte2-T2
PDF
POO - Aula 03 - Membros Estáticos e Construtores.pdf
wp-sn-advanced-high-availability-architecture (pt-br).pdf
AULA 1.pptx GESTÃO DE OPERAÇÕES INDUSTRIAIS
Modelo para Qualificação de Mestrado - Tecnologia da Informação
Panorama da aviação civil brasileira ANAC
20250828_Perfis Profissionais em ServiceNow Um Guia Detalhado.docx
pdfcoffee.com_metalografia-25-pdf-free.pdf
Laboratório de cyber security, apresentação simples.
Google saiba mais sobre o google e suas funcionalidades
POO - Aula 05 - Herança - Generalização e Especialização.pdf
Importacao_Ordem_Customizacao_SAP_S4HANA.pptx
Gestão contínua de exposição a ameaças petrobras
T-pico 1.pdfnsjabdkaksbbsuendnijsbshajanzk
POO - Aula 05 - Herança - Generalização e Especialização.pdf
Legislação aeronautica na aviação civil Brasileira
Introdução a disciplina sistemas operativos
Sistemas Operativos Modulo 2_________________
RCSOFTdfsdfrvadfvdfvargfvevevrervevqer.pptx
Arquitetura de Software slides sommerville
Introdução a Computação em Nuvem-parte2-T2
POO - Aula 03 - Membros Estáticos e Construtores.pdf

Desenvolvimento de aplicações para a plataforma google android

  • 2. Apresentação Cândido Sales Estudante do IFPI; Membro do LIMS; @candidosales [email_address] Lucas Aquiles Estudante do IFPI; @lucas_aquiles [email_address] Apresentação 14/09/11 ENUCOMP - 2011
  • 3. Introdução a Computação móvel 14/09/11 ENUCOMP - 2011
  • 4. Computação Móvel Realizada em dispositivos portáteis que sejam capazes de acessar uma rede sem fio. Por usuários móveis (com diferentes velocidades) Acesso à informação a qualquer lugar, a qualquer momento Termos relacionados: – Computação Pervasiva – Computação Ubíqua 14/09/11 ENUCOMP - 2011
  • 5. Dos Mainsframes à computação móvel 14/09/11 ENUCOMP - 2011
  • 6. Computação Pervasiva Computação Pervasiva: acesso conveniente a informações relevantes e a habilidade de realizar ações sobre as mesmas quando e onde for necessário (IBM). “ Espalhada por todos os lugares” 14/09/11 ENUCOMP - 2011
  • 7. Computação Pervasiva Projeto Everywhere Display (IBM) – Qualquer superfície pode se tornar em uma projeção do tipo “touch screen” 14/09/11 ENUCOMP - 2011
  • 8. Computação Ubíqua Computação Ubíqua: – onipresença da informática no cotidiano das pessoas (Wikipédia) – ... tornam-se parte da nossa vida de forma que não os percebemos mais (Mark Weiser) – Baseia-se na detecção de gestos, movimentos, fala, movimentação dos olhos... 14/09/11 ENUCOMP - 2011
  • 9. Computação Ubíqua Ex: Casa do “futuro”: • Sistema automático de iluminação • Sistemas de extinção e prevenção de incêndios • Monitoramento de saúde dos ocupantes da casa • Geladeira que perceba variações de estoque e validade dos produtos • Celular que envia dados de “coletados” a uma central médica 14/09/11 ENUCOMP - 2011
  • 10. 14/09/11 ENUCOMP - 2011 Computação Ubíqua
  • 11. Juntando tudo 14/09/11 ENUCOMP - 2011
  • 12. Princípios da Computação Móvel Descentralização Diversificação Conectividade Simplicidade 14/09/11 ENUCOMP - 2011
  • 13. Princípio da Descentralização Um passo além da descentralização dos sistemas distribuídos; Uma grande variedade de pequenos dispositivos cooperam estabelecendo uma rede dinâmica de relacionamentos; A habilidade de utilizar aplicações e informações em dispositivos móveis gera a necessidade de sincronização de atualizações de dados com sistemas servidores e outros dispositivos. 14/09/11 ENUCOMP - 2011
  • 14. Princípio da Diversificação Mesma informação em diferentes “modelos” 14/09/11 ENUCOMP - 2011
  • 15. Princípio da Conectividade Uma grande variedade de tecnologias deve ser atendida: – redes celulares, WLANs, Bluetooth, IrDA, WiMax, comunicação via satélite, etc. . . Não basta apenas conectar os dispositivos: – Troca de dados – Descoberta de serviços – Delegação de tarefas 14/09/11 ENUCOMP - 2011
  • 16. Princípio da Simplicidade Computadores de uso geral: configuração complexa “ Computadores” móveis: mais específicos e mais simples em configuração Simples não significa primitivo: – telas touch-screen, – reconhecimento de escrita, – reconhecimento de voz – etc 14/09/11 ENUCOMP - 2011
  • 17. Requisitos de Aplicação • Infra-estrutura: - Cobertura(indoor, outdoor, acesso a alta/baixa velocidade) - Qualidade da comunicação - Confiabilidade e estabilidade da comunicação - Segurança • Dispositivo Móvel – Forma de interação (grafico, textual, voz) – Capacidade de identificar localização – Capacidade de processamento e armazenamento locais • Serviços Middleware – Suporte à criptografia e autenticação – QoS (Quality of Service) – Descoberta e adaptação a novos serviços e recursos 14/09/11 ENUCOMP - 2011
  • 18. Aceitação das Tecnologias Tempo para atingir 1 milhão de usuários: – TV preto-banco: 20 anos – TV em cores: 9 anos – VCR: 8 anos – PC: 6 anos – Celular: 2 anos e meio Dos 128 milhões de PCs vendidos em 2001, 22% eram laptops e este percentual tem crescido 1 a 2 pontos por ano desde 1999; Acessos à Internet por meio de dispositivos móveis ultrapassou os acessos convencionais (PC e Browser) desde meados de 2002. 14/09/11 ENUCOMP - 2011
  • 19. Algumas aplicações de computação móvel Négocios diversos: m-commerce e m-business • Acesso à Internet por viajantes: transferência de arquivos, Web, acesso remoto…; • Comércio: vendedores ambulantes; • Tratamento Médico emergencial: transmissão do prontuário de/para ambulância (ou local do acidente); • Segurança: consulta e obtenção de ficha criminal; • Seguradoras: avaliação de sinistro; • Serviços de resgate: coordenação das atividades de resgate; • Aplicações Militares: coordenação de ações; Gerenciamento de frota e Gerenciamento de bens; 14/09/11 ENUCOMP - 2011
  • 20. Serviços baseados em localização Serviços de emergência: usuários entram em contato com uma central (E911) e é localizado; • Informações de tráfego; • Navegação: Como ir do ponto A ao ponto B? • Gerenciamento de frota; • Gerenciamento de bens; • Publicidade sem fio: usuários podem subscrever serviços que os notifiquem a respeito de certos produtos quando adentrarem uma dada região; • Serviços de busca: restaurantes, postos de gasolina, hotéis próximos; • Localização automática de veículos; • Mapas; • Informações de trânsito; • Jogos. 14/09/11 ENUCOMP - 2011
  • 21. Impacto da Computação Móvel Representa um novo paradigma computacional,ampliando os conceitos da computação distribuída – Áreas com diversas implicações: Redes de Computadores Sistemas Operacionais Banco de Dados Ambientes de Programação etc. . . Mudanças sociais? 14/09/11 ENUCOMP - 2011
  • 22. Difusão da Tecnologia celular 14/09/11 ENUCOMP - 2011
  • 23. 14/09/11 ENUCOMP - 2011 Difusão da Tecnologia celular
  • 24. Difusão da Tecnologia celular 14/09/11 ENUCOMP - 2011
  • 25. 14/09/11 ENUCOMP - 2011 Difusão da Tecnologia celular
  • 26. Difusão da Tecnologia celular 14/09/11 ENUCOMP - 2011
  • 27. 14/09/11 ENUCOMP - 2011 Difusão da Tecnologia celular
  • 28. 14/09/11 ENUCOMP - 2011 Difusão da Tecnologia celular
  • 29. 14/09/11 ENUCOMP - 2011 Difusão da Tecnologia celular
  • 30. 14/09/11 ENUCOMP - 2011 Difusão da Tecnologia celular
  • 31. 14/09/11 ENUCOMP - 2011 Difusão da Tecnologia celular
  • 32. Visão Geral III SACIC - 2011 14/09/11 ENUCOMP - 2011
  • 33. Roteiro Mundo mobile O que é o Android; Open Handset Alliance; Android e os competidores; Por que Linux no Android?; Dalvik Virtual Machine; Instalando as ferramentas do Android; Projeto “Meu HelloWord” Componentes; 14/09/11 ENUCOMP - 2011
  • 34. Mundo mobile Mercado de celulares Usuários querem mais recursos em seus dispositivos Aplicações móveis no mundo coorporativo Necessidade de plataformas mais modernas para desenvolvimento de aplicações no auxilio de seus negócios e lucros. 14/09/11 ENUCOMP - 2011
  • 35. O que é Android? Sistema operacional baseado no kernel do Linux; Possui uma implementação da JVM – Dalvik; Código aberto e livre; Plataforma flexível e poderosíssima de desenvolvimento Customizavel 14/09/11 ENUCOMP - 2011
  • 36. Android e os competidores IPhone JME Symbiam BlackBerry WindowsMobile 14/09/11 ENUCOMP - 2011
  • 37. Porque Linux no android? Construída sob o kernel 2.6 do Linux Gerencia memória e processos Abstração de hardware Usuários não vêem o Linux e seus programas não fazem chamas diretas a ele. Suporte a gráficos 3D, especificação 1.0 da OpenGL ES, possível criar jogso com ótima qualidade. 14/09/11 ENUCOMP - 2011
  • 38. Open Handset Alliance União entre grandes da telefonia liderados pelo Google (OHA – Open Handset Alliance ) Definir uma plataforma única e aberta Plataforma moderna e flexível para desenvolvimento de aplicações Fabricantes, Usuários e Desenvolvedores se beneficiam com o grupo 14/09/11 ENUCOMP - 2011
  • 39. Dalvik Virtual Machine JVM ótimizada para execução de dispositivos móveis – Dalvik Bytecodes (arquivo .class) são convertidos em arquivo .dex (Dalvik Executable) – Aplicação android compilada Compactação dos arquivos .dex e recursos como imagens em arquivos .apk (Android Package File) – Aplicação Final 14/09/11 ENUCOMP - 2011
  • 40. Instalando as ferramentas do Android Requisitos Java SDK Android SDK Eclipse IDE Plugin ADT 14/09/11 ENUCOMP - 2011
  • 41. Configuração do ambiente Escolher a versão do JDK 2.Aceite os termos 3.Escolher a versão para seu S.O 14/09/11 ENUCOMP - 2011
  • 42. Configuração do ambiente Instalação do JDK no Linux (Ubuntu) Com o comando apt-get : sudo apt-get install openjdk-6-jdk && sudo apt-get install sun-java6-jdk Após a instalação entre via console e digite: java –v A saída deve ser a versão do java instalado. 14/09/11 ENUCOMP - 2011
  • 43. Instalação do Android SDK 1. no site www.android.com escolher a opção developers 14/09/11 ENUCOMP - 2011
  • 44. Instalação do Android SDK 2. Escolha a opção SDK 3. Baixe o android SDK de acordo com o seu S.O A versão atual é a 3.2 (para tablet) e 2.3.3 (para smartphone) 14/09/11 ENUCOMP - 2011
  • 45. Instalação do Android SDK Localize o arquivo e descompacte-o. No windows basta executar o arquivo “SDK Manager.exe” localizado na pasta raiz do sdk No linux ou Mac, acesse pelo terminal a pasta raiz do sdk e execute o comando ./tools/android 14/09/11 ENUCOMP - 2011
  • 46. Instalação do Android SDK irá aparacer o Android SDK e o AVD ( android vitual device ) Manager. 14/09/11 ENUCOMP - 2011
  • 47. Instalação do Android SDK Vá em “Available Packages”, marque a opção “AndroidRepository” e clique em “Install Selected” 14/09/11 ENUCOMP - 2011
  • 48. Instalação do Android SDK Uma lista com todos os componentes disponíveis, incluindo documentação, plataformas, add-on, bibliotecas será exibida. 14/09/11 ENUCOMP - 2011
  • 49. Instalação do Android SDK Caso ocorra algum erro de HTTPS SSL, vá em &quot;settings“, marque a opção &quot;Force https:// sources to be fetched using http://&quot; e clique em &quot;Save & Apply&quot;. 14/09/11 ENUCOMP - 2011
  • 50. Instalação do Android SDK Aceite todos e clique em “install” 14/09/11 ENUCOMP - 2011
  • 51. Instalação e Configuração do Eclipse IDE 1. Acesse o site www.eclipse.org e vá na sessão “Downlods” 2. Escolha a versão do Eclipse IDE for Java Developers 14/09/11 ENUCOMP - 2011
  • 52. Instalação e Configuração do Eclipse IDE Faça o download 14/09/11 ENUCOMP - 2011
  • 53. Instalação e Configuração do Eclipse IDE Após o download localize o arquivo , descompacte-o e execute o arquivo “eclipse.exe” No ubunto é apenas “eclipse” 14/09/11 ENUCOMP - 2011
  • 54. Instalação do plugin ADT Inicie o eclipse e vá em “ help ”, “ install new software ” 14/09/11 ENUCOMP - 2011
  • 55. Instalação do plugin ADT Clique em add e uma nova janela irá aparecer Em “name” coloque “ADT Plugin” e em “location” adicione https://dl-ssl.google.com/android/eclipse/ e clique em “ok” 14/09/11 ENUCOMP - 2011
  • 56. Instalação do plugin ADT Selecione “ADT Plugin” na lista de sites, marque a opção “Developers Tools” e clique em “next”. 14/09/11 ENUCOMP - 2011
  • 57. Instalação do plugin ADT Irá aparecer uma lista com todos os item a serem instalados. Clique em &quot;Next&quot; novamente. Na próxima tela, escolha a opção &quot; I accept the the terms of the licence agreements &quot; e clique em 'Finish'. Após o processo de instação do plugin o Eclipse irá reiniciar. 14/09/11 ENUCOMP - 2011
  • 58. Instalação do plugin ADT Quando o Eclipse IDE iniciar uma mensagem de erro irá aparecer, porque a IDE não consegue localizar o Android SDK Vá em Window, Preferences, Android. Clique em 'Browse..‘, selecione a raiz do SDK e clique em 'OK‘. 14/09/11 ENUCOMP - 2011
  • 59. Criando uma ADV Abra o “SDK e ADV Manager” e em Virtual Devices clique em “new” 14/09/11 ENUCOMP - 2011
  • 60. Criando uma ADV Adicione as informações como na imagem e clique em “Create ADV” 14/09/11 ENUCOMP - 2011
  • 61. Criando uma ADV Criamos uma ADV com o nome “enucomp” Que possui o firmeware 2.2 e também possui o Secure Digital Card (SD) e o Skin Default Half-VGA – HVGA (320 x 480) 14/09/11 ENUCOMP - 2011
  • 62. Pronto! Nosso ambiente está pronto para desenvolvimento. 14/09/11 ENUCOMP - 2011
  • 63. Projeto “Meu HelloWord” O plugin ADT vem com uma aplicação HelloWord de exemplo, vamos usá-la Vá em “file” > “Project” > “new project”. Vá em “android” > “android project” e clique em “next” Em Project Name digite: HelloAndroid No Build Target: Android 2.2 Application Name : Hello, Android Package name: br.ifpi.edu.hello Create Activity: Hello E clique em “finish” 14/09/11 ENUCOMP - 2011
  • 64. Projeto “Meu HelloWord” Um estrutura de diretórios como a mostrada abaixo será criada 14/09/11 ENUCOMP - 2011
  • 65. Projeto “Meu HelloWord” Para executar clique com o botão direito em cima do projeto e escolha “run as” > “android application” 14/09/11 ENUCOMP - 2011
  • 66. Projeto “Meu HelloWord” 14/09/11 ENUCOMP - 2011
  • 67. Activity III SACIC - 2011 14/09/11 ENUCOMP - 2011
  • 68. Activity Uma tela pode ser criada de duas formas: – Em um arquivo XML – Direto em um arquivo Java usando a sua API android.app.Activity: – Similar à classe JFrame do Swing – Representa, à priori, uma tela da aplicação – Composta por vários componentes representados pela classe andoid.view.View (botões, checkboxes, imagens) – Controla a passagem de parâmetros para outra tela – Define métodos para tratar eventos dos componentes 14/09/11 ENUCOMP - 2011
  • 70. View São componentes simples (botões, checkboxes, imagens) ou componentes compostos – Atuam como gerenciadores de layout – Podem conter várias views filhas (outro componentes) O arquivo main.xml é um arquivo de layout padrão Vários layouts podemser definidos 14/09/11 ENUCOMP - 2011
  • 71. Setando a View Principal O médoto setContentView faz a ligação entre a activity e a view A view passada como parâmetro está definida no arquivo main.xml (pode ser mudado) – é referenciada via o arquivo R.java como uma constante 14/09/11 ENUCOMP - 2011
  • 72. A classe R 14/09/11 ENUCOMP - 2011
  • 73. AndroidManifest.xml Base da aplicação e semelhante ao web.xml de aplicações WEB 14/09/11 ENUCOMP - 2011
  • 74. AndroidManifest.xml As Activities devem ser definidas no arquivo Para que o usuário possa interagir, pelo menosuma Activity deve ser definida no arquivo A configuração de uma Activity como ponto de partida para a aplicação é ilustrada abaixo: 14/09/11 ENUCOMP - 2011
  • 75. Criação de interface via Java Pode-se definir uma interface visual via codificação java 14/09/11 ENUCOMP - 2011
  • 76. Referenciando componentes Sempre que possível, atribua um ID aos componentes 14/09/11 ENUCOMP - 2011
  • 77. Referenciando componentes Adicionar IDs aos componentes permitem acesso via codificação 14/09/11 ENUCOMP - 2011
  • 78. Tratando o clique de um botão Para tratar eventos de um botão, deve-se: – Obter o componente pelo ID – Instanciar um listener – Setar o listener no botão – Implementar o método onClick 14/09/11 ENUCOMP - 2011
  • 80. Gerando Logs 14/09/11 ENUCOMP - 2011
  • 81. Gerando Logs Usa-se a classe Log e seus métodos estáticos: 14/09/11 ENUCOMP - 2011
  • 82. Componentes III SACIC - 2011 14/09/11 ENUCOMP - 2011
  • 83. Roteiro ScrollView; MapView; ListView; ImageView; ContextMenu; Autocomplete; Tables; Buttons (ImageButton, GroupButton, Button); “ CSS”; Tratamento de eventos Apresentação de exemplos 14/09/11 ENUCOMP - 2011
  • 84. ScrollView A classe android.widget.ScrollView deve ser utilizada para telas que contêm muitos elementos e nas quais seja necessário fazer a rolagem da tela. Exemplo exemplo_scrollview.xml ExemploScrollView 14/09/11 ENUCOMP - 2011
  • 85. MapView Para visualização de mapas; Para utilizar um MapView, basta definir a tag <com.google.android.maps.MapView> e informar no atributo android:apiKey uma chave de autenticação válida para o Google Maps. Exemplo Mapview.xml MapaSimplesXML 14/09/11 ENUCOMP - 2011
  • 86. ListView Desenha os componentes em uma lista vertical e com barra de rolagem (scroll), se necessário. Necessita da classe android.app.ListActivity, uma acitivy especial para exibir uma lista de itens na vertical. Exemplo Prático! Pág. 113 14/09/11 ENUCOMP - 2011
  • 87. ImageView Apresenta uma imagem que você selecionou. 14/09/11 ENUCOMP - 2011
  • 88. Context Menu Menu contextuado que pode ser utilizado em qualquer momento de sua aplicação. Exemplo Pág 253 14/09/11 ENUCOMP - 2011
  • 89. Autocomplete Um recurso muito usado em aplicações web São campos de texto que podem completar automaticamente o texto que o usuário está digitando. Para usar o AutoCompleteTextView é necessário chamar o método setAdapter(adaptador) e informar sua implementação de ListAdapter. Exemplo Pág 221 14/09/11 ENUCOMP - 2011
  • 90. Tabs Conceitos TabHost – Componente que agrupa os butões e o contéudo TabWidget – Grupa em linha os butões que possuem labels e ícones (opcional) FrameLayout – Agrupa o conteúdo de uma aba 14/09/11 ENUCOMP - 2011
  • 91. Tabs Estrutura 14/09/11 ENUCOMP - 2011
  • 92. Usando TabActivity Crie uma nova Activity que extenda de TabActivity e implementa as interfaces OnTabChangeListener e TabContentFactory 14/09/11 ENUCOMP - 2011
  • 93. Usando TabActivity Crie dois novos layouts xml do android com os nomes tab1.xml tab2.xml e adicione um TextView a cada layout E altere o setContentView() das activitys Tab1.class e Tab2.class para eles. 14/09/11 ENUCOMP - 2011
  • 94. Nova tab pelo XML do Android Crie um novo layout XML - tabs.xml Crie uma nova acvitivy - Tabs.java que estenda de Activity Adicione a activity ao AndroidManifest.xml Altere o método setContentView(R.layout.tabs)) 14/09/11 ENUCOMP - 2011
  • 95. Nova tab pelo XML do Android Sua activity deve está assim 14/09/11 ENUCOMP - 2011
  • 96. Nova tab pelo XML do Android Altere o arquivo tab.xml 14/09/11 ENUCOMP - 2011
  • 97. Nova tab pelo XML do Android Altere o arquivo Tab.java 14/09/11 ENUCOMP - 2011
  • 98. Nova tab pelo XML do Android Altere o arquivo AndroidManifest para que a activity Tabs.java seja iniciada no início da aplicação 14/09/11 ENUCOMP - 2011
  • 99. Buttons As classes android.widget.Button e android.widget.ImageButton são utilizadas para criar um botão na tela. A diferença é que a classe ImageButton permite usar uma imagem para desenhar no botão. Exemplo Pág 223 14/09/11 ENUCOMP - 2011
  • 100. “ CSS” Podemos utilizar os arquivos XML como extensões de estilos que podem ser reutilizados em vários layouts, sem necessitar a repetição de código. Exemplo Guia Turistico 14/09/11 ENUCOMP - 2011
  • 101. Ciclo de vida III SACIC - 2011 14/09/11 ENUCOMP - 2011
  • 102. 17/05/11 III SACIC - 2011 Ciclo de vida de uma activity 14/09/11 ENUCOMP - 2011
  • 103. 17/05/11 III SACIC - 2011 onCreate : – Obrigatório e chamado uma única vez. – Deve-se setar a view • onStart : é chamado quando uma activity está ficando visível e já tem uma view definida • onRestart: chamado quando uma activity foi parada temporariamente e está retornando à execução • onResume : – Quando uma activity está executando. – Pode ser chamada também para recuperação de dados quando foi interrompida e volta a execução Ciclo de vida de uma activity 14/09/11 ENUCOMP - 2011
  • 104. 17/05/11 III SACIC - 2011 onPause : chamado quando a activity está sendo tirada do topo da execução. Usado para salvar o estado da aplicação onStop : – A aplicação não está mais visível e está em segundo plano. – Caso fique por muito tempo em 2o Plano e falte recursos, o S.O. pode remover completamente da pilha de execução onDestroy : encerra literalmente a activity Ciclo de vida de uma activity 14/09/11 ENUCOMP - 2011
  • 105. Activities x Intents III SACIC - 2011 14/09/11 ENUCOMP - 2011
  • 106. Activities x Intents Activities são as &quot;telas&quot; Uma aplicação pode ter várias activities: – geralmente independentes, – contudo elas podem precisar se cooperar e trocar dados entre si Numa aplicação tradicional, uma activity deve ser definida como &quot;main&quot; e será executada ao rodar a aplicação Indo de uma activity para outra é possível pedindo para a atual executar uma intent 14/09/11 ENUCOMP - 2011
  • 108. Intents android.content.Intent • Representa uma mensagem da aplicação para o S.O. • Solicita que algo seja realizado e serve para integrar aplicações • Ex: – Chamar outra tela (já visto) – Solicitar que o S.O. ligue para um número; – Abrir o browser em um determinado endereço – Exibir algum endereço, localização ou rota num mapa – Executar processamento em segundo plano – Enviar mensagem para outras aplicações realizarem tarefas específicas 14/09/11 ENUCOMP - 2011
  • 109. Intents São chamadas pelos métodos: startActivity(intent) = Executa uma activity starActivityForResult(intent) = Executa uma activity quepode retornar valores startService(intent) or bindService(intent, …) = Inicia ou se comunica comum serviço de segundo plano sendBroadcast(intent) = Envia uma intent que podeser &quot;capturada&quot; por serviçosespecíficos 14/09/11 ENUCOMP - 2011
  • 110. Alguns tipos de Intents pré-definidos 14/09/11 ENUCOMP - 2011
  • 111. Permissões Algumas intents necessitam de permissão explicita para executar Deve-se adicionar as permissões no arquivo AndroidManifest.xml 14/09/11 ENUCOMP - 2011
  • 112. Usando Intents pré-definidas 14/09/11 ENUCOMP - 2011
  • 113. Algumas permissões Permissão para executar navegação: INTERNET Ligações telefônicas: CALL_PHONE Leitura à lista de contatos: READ_CONTACTS 14/09/11 ENUCOMP - 2011
  • 114. Intent chamar navegador Tipo ACTION_VIEW ... Uri uri = Uri.parse(&quot;http://www.android.com&quot;); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); ... É necessária a permissão INTERNET 14/09/11 ENUCOMP - 2011

Notas do Editor

  • #38: Em alguns casos precisamos, durante o desenvolvimento, precisamos interagir com o Linux. Por exemplo, O comando adb shell irá abrir o console do linux no qual você pode entrar com outros comandos para rodar no seu dispositivo (ex: ver arquivos de sistema, atividade de processos, restrições de segurança, etc.).