Escolar Documentos
Profissional Documentos
Cultura Documentos
Dispositivos mveis
O tamanho importante
Dispositivos
Outros Dispositivos
Caractersticas comuns
Interface limitada
Processamento
Comunicao
Energia
Limitaes
Limitaes
Limitaes
Largura de banda
Taxa de erros
Energia
Infra-estrutura
Infra-estrutura
Diversas Tecnologias
COMPUTAO UBQUA
O que Computao
Ubqua?
Ubquo
adjetivo
1 que est ou existe ao mesmo tempo em toda
parte; onipresente
2 que se difundiu extensamente; geral, universal
Tendncia da Computao
Origem da Computao
Ubqua
Idealizada por Mark Weiser que imaginou
ambientes impregnados de computao,
nos quais os dispositivos esto totalmente
adaptados ao cotidiano.
Principais caractersticas da
Computao Ubqua
Diversidade
Descentralizao
Conectividade
Onipresena
x
computador deixa de ser o foco das atenes)
Calm Technology
Tecnologias envolvidas
Hardware
Software
Modelagem de contexto
Interao
Aplicaes
Tecnologias envolvidas
Computao Mvel
Tecnologias envolvidas
Computao Pervasiva
Tecnologias envolvidas
Computao Ubqua
Computao Ubqua e
Sistemas Operacionais
Grande variedade de dispositivos
computacionais gera necessidade da
criao de SOs especficos para cada
dispositivo
A especializao do dispositivo um dos
aspectos que determina o projeto do sistema
operacional do dispositivo
Exemplos de SO:
Palm OS (PDA), EPOC (celular), Java Card e
W/Smart Card para Smart Cards, QXN,
VxWorks etc
Desafios da Computao
Ubqua
Privacidade
Complexidade
Expansibilidade
Segurana
Desafios da Computao
Ubqua
Custo
Complexidade
Expansibilidade e Interoperabilidade
Tolerncia a falhas
Mobilidade
Introduo
Atualmente, a Computao Mvel vem
surgindo como um novo paradigma
computacional.
As redes que suportam a computao
mvel so as Redes Mveis, que trazem
novos
requisitos
e
desafios
no
encontrados em redes de computadores
tradicionais.
Introduo (cont.)
A Mobilidade a principal caracterstica das
Redes Mveis. Ela traz problemas e desafios
que at ento, no vamos, ou ignorvamos
em ambientes fixos.
A mobilidade
problemas:
impe
requisitos
gera
roteamento;
velocidade do canal;
interferncias do ambiente;
entre outros.
Portabilidade
a capacidade de um terminal mvel
operar a partir de diferentes pontos de
conexo, mas perde o contato durante o
tempo de mudana do ponto de acesso.
Mobilidade
a capacidade de um terminal mvel
continuar em contato contnuo com os
recursos da rede.
Redes Mveis
So redes de computadores
possuem ns mveis:
sem
Redes Infra-Estruturadas:
Redes
WPAN
Redes
Redes
fio
que
(redes
de
computadores
Estaes Mveis
sensores).
(notebook,
celular,
palmtop,
PDA,
Mobilidade do usurio;
Gerenciamento
estao mvel;
Suporte QoS;
Segurana.
do
consumo
de
energia
da
IETF criou grupo de trabalho em MANET (Mobile Adhoc NETwork) - RFC 2501, RFC .
Vantagens
Rpida instalao:
Excelente para cenrios de desastre,
campos de batalha ou conferncias onde
no existe uma estrutura prvia ou esta
no est disponvel.
Tolerncia falhas:
Vrios caminhos podem ser criados.
Vantagens
Conectividade:
Os ns dentro da rea de alcance podem
trocar informaes diretamente.
Desvantagens e dificuldades
Localizao:
Encontrar o n mvel.
Desvantagens e dificuldades
Qualidade do canal:
Ns de capacidades
diferentes.
caractersticas
Aplicaes
Fins militares;
Cenrios de catstrofes:
Furaces;
Terremotos;
Enchentes.
Busca e salvamento;
Conferncias;
Controle de trfego;
Redes pequenas;
Redes grandes;
Mensagens grandes;
Grande fluxo;
Principais
energia;
Capacidade da implementao
caminhos (Multipath);
pontos:
eficincia
economia
de
de
mltiplos
Atualmente, os smartphones
so reprodutores de mp3,
cmeras, entre outros.
BlackBerry Bold
9900
Histria
A Research in Motion (RIM) foi fundada em
1984 o primeiro BlackBerry chegou ao
mercado em 1999;
Histria
No h consenso sobre
qual
foi
o
primeiro
smartphone
fabricado,
porm, o iPhone foi o
primeiro smartphone a ser
um sucesso de vendas;
Nmeros
Crescimento das vendas de Smartphones (2011)
Mundo
61% (mdia)
Brasil
179%
A venda de
smartphones
representa
7,5% da
venda total
de celulares
Queda de
33% no
preo mdio
dos
aparelhos
Cloud Computing
Pode ser considerado
como uma evoluo
da tecnologia push:
possvel acessar seus
dados (e no apenas
e-mails ou contatos)
de todos os tipos de
hardwares que uma
pessoa possui;
Dropbox, iCloud,
Google Docs, LogMe
In,
LG Optimus Vu
Mobilidade
Crescimento da demanda 134%;
Fabricantes retomam mercado
europeus e americanos X asiaticos;
24,5% do mercado Motorola
16% do mercado
16% do mercado
Segurana
Smartphone no esto alheios a
problemas de segurana e vrus
Estamos ainda em uma poca de
adaptao, onde as pessoas no so to
desconfiadas como perante um
computador
Nume, da empresa CTS, um hardware de
encriptao, cuja incumbncia
impossibilitar a intercepo das
comunicaes procedentes de telefones
smartphones, tablets e computadores.
Desenvolvimento de aplicativos
para dispositivos mveis
usando Android
Plataforma Android
Ambiente de software para dispositivos mveis
Inclui
UI rica
Aplicaes de usurio
Bibliotecas de cdigo
Frameworks de aplicao
Suporte a multimdia
Funcionalidades de telefonia
etc
Introduo a Android
Plataforma de software
Esforo principal da Google
Plataforma
Android um Sistema Operacional que
utiliza em seu ncleo a verso 2.6 do
kernel do Linux. um sistema leve
porm poderoso;
Atualmente o Android equipa Celulares,
Tablets PC, SmartPhones, etc;
Caractersticas
Construdo em Java
Plataforma Android
Componentes do SO esto em
C ou C++
Aplicaes so desenvolvidas
em Java
Open-source
Caractersticas
Tecnologias Utilizadas
JDK J2SE
Eclipse 3.6.2
Android SDK
Mercado
Operadoras de telefonia
AT & T, Verizon
Servios de dados
Mercado premium e com larga margem de lucro
Mercado
Android X Android
Mercado open-source faca de dois
gumes
Modelo de licenciamento
Concorrncia acirrada entre fabricantes
Fenmeno mee too
Camadas
Kernel linux
Drivers de hardware
Bibliotecas
Managers
Telefonia, Activities
(views), janelas, recursos,
etc
Android runtime
Core java
Dalvik VM
Camadas
Linux kernel
Porque linux?
Open-source
Cobre mudana rpida de produtos
Plataforma comprovadamente estvel
Camadas
Dalvik VM
Criado por Dan Bornstein;
Nome de uma cidade em Iceland
Camadas
Dalvik VM
No JME
No Java (??)
Aplicaes so escritas em Java, so compiladas para
bytecode Java, mas traduzidas para uma representao
similar, porm diferente, chamada arquivos dex
Introduo a Android
Palavras chave para o programador:
Activity
Intent *
Resource *
Service
ContentProvider *
BroadcastReceiver
IntentFilter
Intents
android.content.Intent.ACTION_VIEW
Map lookup/search
Gei:0,0?q=23+Route+206+Stanhope+NJ
Website em navegador
http://www.google.com
Intents
Intents - Exemplo
Selecionar um registro em contatos
startActivity(pickIntent);
Intents
IntentFilter
AndroidManifest.xml
Controller do MVC
ARQUITETURA
Arquitetura
Aplicaes
Cliente de e-mail
SMS
Calendrio
Mapas
Navegador
Contatos e outros.
Framework
Views
Views (1/3)
82
Views (2/3)
83
Views (3/3)
84
Interface
Usa-se objetos View e ViewGroup.
View - estrutura de dados cujas propriedades
do layout so guardadas para uma rea
retangular especifica da tela.
Para vincular a rvore view tela para ser
renderizada, sua Activity precisa chamar o
mtodo setContentView(View view).
Componentes Android
Service
Aplicaes com ciclo de vida longo ou tarefas
repetitivas
Componentes Android
BroadcastReceiver
Aplicaes que recebem e respondem a
eventos globais
Componentes Android
ContentProvider
Expe dados para outras aplicaes
Uso do ContentProvider
AndroidManifest.xml
Para o sistema identificar sua aplicao, ele
precisa ler o arquivo AndroidManifest.xml.
Alm de declarar os componentes da aplicao
o arquivo manifesto faz tambm outras coisas:
Entre outros.
Arquivo de manifesto
AndroidManifest.xml
Informaes sobre execuo de uma
aplicao Android
Contm ao menos uma entrada Activity,
Service, BroadcastReceiver ou
ContentProvider
Deployment descriptor
Exemplo de Manifesto
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.msi.manning.unlockingandroid">
<application android:icon="@drawable/icon">
<activity android:name=".Activity1" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
Layout
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid extends Activity {
CRIANDO UM PROJETO
Criando um Projeto
Criando um Projeto
Criando um Projeto
Criando um Projeto
Criando um Projeto
Entendendo a Estrutura do
Projeto
Executando
DEPURANDO E DISTRIBUINDO
Criando um Breakpoint
Criando um Breakpoint
Criando um Breakpoint
DEPLOY
Deploy
Processo de gerao de um arquivo de
instalao chamado .apk
O Android exige que todas as aplicaes
instaladas tenham certificados digitais
assinados com uma chave privada.
Deploy
As ferramentas
do Android
implementadas
no Eclipse
ajudaro na
assinatura
Deploy
Deploy
Deploy
Deploy
Deploy