View
124
Download
0
Category
Preview:
Citation preview
Agenda Evolução
M-Learning - Desenvolvimento
Web
Nativo
Caso de estudo: Android
Plataforma
Desenvolvimento
Contactos
Evolução Computadores
Tamanho & Desempenho
66 anos
ENIAC1947
HTC One(Abril 2013)
Evolução Computadores
Tamanho & capacidade
IBM RAMAC (5MB)1956
SSD SATA(256 GB)2006
50 anos
Evolução Computadores
Interacção com o meio envolvente
ARPANET1968
WEB 2.02004
36 anos
Evolução Primeiros computadores portáteis
Xerox NoteTaker (1976)
Osborne (1980)
Compaq Portable (1983)
Evolução Personal Digital Assistant (PDA)
Assistentes digitais pessoais
Evolução:
Calculadoras avançadas
Organizadores pessoais
Computadores de bolso
Principais PDAs
Psion Organizer (1984)
Apple Newton Message Pad (1993)
Palm Pilot (1996)
Evolução Primeiros SOs e plataformas
Microsoft (WinPad + Pulsar = Pegasus)
Nascimento do Windows CE (1996)
Estatísticas do mercado:
Windows CE – 34%
Palm OS – 43%
Evolução A hegemonia da Microsoft e da Palm, Inc. foi posta em
causa com o aparecimento de novos SO no novo milénio…
Apple IPhoneiOS
(2007)
HTC DreamAndroid(2008)
M-Learning - DesenvolvimentoM-Learning…desafios técnicos?
Bateria
Conetividade
Tamanho do ecrã
Streaming
Formatos suportados
Segurança
Fragmentação (standards, resoluções, SO)
Adaptação de conteúdos
…
M-Learning - DesenvolvimentoAbordagens
1. Usar sistemas de e-learning existentes
2. Criar novos sistemas
Aplicações Web
Aplicações Nativas
1. Usar sistemas de e-learning existentes1. Sistemas de Gestão de Aprendizagem
1. MM (Moodle Mobile)
HTML5 app (suporte Moodle 2.4)
REST Web Services para obter/enviarinfo de/para a instalação mãe do Moodle
Layout criado usando HTML5/CSS3
Interação com o dispositivo via Phonegap
Suporte jQuery (javascript framework)
Chamada de Web Services
Manipulação do DOM
Interação com o Phonegap
M-Learning - Desenvolvimento
1. Usar sistemas de e-learning existentes2. Ferramentas de autoria multi-dispositivos
1. Articulate StoryLine
2. Lectora
3. Captivate
4. GoMoLearning
M-Learning - Desenvolvimento
2. Criar novos sistemas1. Aplicações Web
Podem ser executadas em múltiplas plataformas
A mesma interface independente do dispositivo
Atualização rápida e abrangente
Ex: HTML5
2. Aplicações Nativas Mais tempo para chegar a todas as plataformas
SDK facilita a programação e teste das aplicações
Tira melhor partido do dispositivo (ex.: sensores).
Uso dos recursos de hardware (ex. acelerómetro para jogos)
Ex: Android apps, iOS apps, etc.
M-Learning - Desenvolvimento
Desenvolvimento Web Técnicas de otimização de sites para smartphones
1. Responsive web design
2. User agent
3. Separate sites
Desenvolvimento Web1. Responsive web design
Usa uma única URL
Mesmo conteúdo para todos osdispositivos
Usa CSS3 media queriespara inferir características docliente e decidir formatação
Desenvolvimento Web2. User-Agent
Usa uma única URL
Deteta responsável pelo pedido através da inspeção do cabeçalho do pedido HTTP user-agent
Direciona o pedido para diferentes conteúdos
Desenvolvimento Web3. Separate sites
Usa normalmente duas URLs
Uma para o site desktop
Outra para o site mobile
Desenvolvimento Nativo
Sistemas Operativos móveis
Android (Eclipse + Java)
iOS (Xcode + Objective-C)
BlackBerry (Eclipse+Java(ME))
Windows Phone (Visual Studio + C#/VB/*)
1 – Relatório IDC 2012
Desenvolvimento Nativo Mercado nos Sistemas Operativos móveis 1
Android (75%)
iOS (14,9%)
BlackBerry (4,3%)
Symbian (2,3%)
Windows Phone (2%)
Google Nexus 4Android 4.2.2
(2012)1 – Relatório IDC 2012
Plataforma Android O que é o Android?
Sistema Operativo
Baseado em Linux
Direcionado para smartphones e tablets
Criado em 2007 pela Open Handset Alliance (Google et al)
Primeiro dispositivo foi o HTC Dream lançado em 2008
Plataforma Android Versões
Plataforma Android Arquitetura
Plataforma Android Google Play
Loja online mantida pela Google paradistribuição de aplicações, jogos, etc.
Quase 1 milhão de apps disponíveis
Google Play Store
Plataforma Android Características
Armazenamento - suporte SQLite (base de dados relacional);
Conectividade - suporte para GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth (inclui A2DP e AVRCP), Wi-Fi, LTE, e WiMAX;
Mensagens - suporte de SMS e MMS;
Navegação Web - baseado no motor WebKit. Suporte para Flash;
Multimédia - suporte para formatos de imagem (JPEG, PNG, GIF, e BMP), audio (MP3, Ogg Vorbis, WAV) e vídeo (MPEG4, H.264);
Hardware - câmaras de vídeo, touchscreen, acelerómetros, sensor de proximidade, GPS, bússola digital, gráficos 3D;
Interação - suporte multi-toque e aplicações multi-tarefa;
SDK - contém as ferramentas necessárias para criar, compilar, testar, empacotar e distribuir aplicações Android.
Desenvolvimento em Android Requisitos para desenvolvimento
1. Android SDK
2. Eclipse
3. Android Development Tools
ADT Bundle: http://developer.android.com/sdk/index.html
Android SDK(1)
ADT (3)
SO
Eclipse (2)
JAVA
Desenvolvimento em Android1. Android SDK
Contém as ferramentas necessárias para criar, compilar, testar, empacotar e distribuir aplicações
URL: http://developer.android.com/sdk/index.html
SDK Manager
Desenvolvimento em Android2. Eclipse
IDE recomendado para codificação de aplicações Android
Versão mais recente é o Eclipse Juno (4.2)
URL: http://www.eclipse.org/downloads/
Pacote: “Eclipse IDE for Java EE Developers”
Desenvolvimento em Android3. Android Development Tools (ADT)
Conjunto de plugins que extendeo Eclipse para suporte Android
Android Virtual Devices (AVD)
URL: https://dl-ssl.google.com/android/eclipse/
Desenvolvimento em Android3. Android Development Tools (ADT)
Conjunto de plugins que extendeo Eclipse para suporte Android
Android Virtual Devices (AVD)
URL: https://dl-ssl.google.com/android/eclipse/
Desenvolvimento em Android A minha primeira App (I)
Desenvolvimento em Android A minha primeira App (II)
Desenvolvimento em Android A minha primeira App (III)
Desenvolvimento em Android A minha primeira App (IV)
Desenvolvimento em Android A minha primeira App (V)
RECURSOS
Desenvolvimento em Android Anatomia de um projeto Android
APP
ATIVIDADES
UI LÓGICA
MANIFESTO
Desenvolvimento em Android Anatomia de um projeto Android
Atividades – entidades principais de uma app composta por:
Parte gráfica(.XML)
Parte lógica (.JAVA)
Desenvolvimento em Android Anatomia de um projeto Android
Atividades – entidades principais de uma app composta por:
Parte gráfica(.XML)
Parte lógica (.JAVA)
public class HelloWorldActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_hello_world);
}
}
Desenvolvimento em Android Componentes
FUNCIONALIDADE CLASSE BASE JAVA EXEMPLOS
Foco em coisas que o utilizador possa fazer Activity Editar uma nota, jogando um jogo
Execução de processos em background Service Tocar uma música
Receção de mensagens BroadcastReceiver Despoletar alarme após evento
Armazenamento/recuperação de dados ContentProvider Abrir um contacto telefónico
Desenvolvimento em Android Comunicação entre atividades
Usando Intents
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "Uma mensagem de
texto...");
sendIntent.setType("text/plain");
startActivity(sendIntent);
Desenvolvimento em Android Interface Gráfica
Hierarquia de objetos View e ViewGroup
Desenvolvimento em Android Interface Gráfica
Tipos de layout (objetos ViewGroup)
Desenvolvimento em Android Interface Gráfica
Tipos de widgets (objetos View)
Desenvolvimento em Android Sensores
Movimento - medem as forças deaceleração e de rotação, ao longo detrês eixos. Esta categoria incluiacelerômetros, sensores de gravidade,giroscópios, entre outros;
Ambientais - medem vários parâmetros ambientais, tais como a temperatura ambiente do ar e da pressão, a iluminação e humidade. Esta categoria inclui barómetros, fotômetros e termômetros;
Posição - medem a posição física de um dispositivo. Esta categoria inclui sensores de orientação e magnetómetros.
Desenvolvimento móvelM-Learning…futuro?
Location aware learning
Point-and-shoot learning e códigos 2D
Segurança nas transações - Near Field Communications (NFC)
Sensores e acelerómetros (behavioral based learning)
Criação de conteúdos móveis (user generated content)
Jogos
Simulação e realidade aumentada
Contactos
"I practice until I have my life in my fingers"Pianists' expression
ricardo.queiros@eu.ipp.pt
Recommended