minicurso iniciando com android no androidos day

Post on 11-Apr-2017

73 Views

Category:

Software

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Minicurso

Iniciando com AndroidMessias R. Batista@mrafaelbatista

Androidos 2016

Agenda

O objetivo principal deste minicurso é apresentar o Android como plataforma de desenvolvimento. Os participantes poderão trocar experiências sobre os principais conceitos, os pilares de desenvolvimento da plataforma, as técnicas de design do material e principalmente desenvolvendo um app para consolidar tudo o que for discutido.

1. Quem sou eu?

2. Quero aprender Android, como faço?

3. Preparação para o Android

4. Prática I: Hello World

5. Prática II: Genymotion

6. O Robozinho Verde da Googlelandia

7. Introdução ao Material Design*

8. Prática III: App Comparativo

9. Melhores Práticas*

10. Prática IV: App Intents

1. Quem sou eu?

Quem sou eu?

Messias R. Batista

Desenvolvedor Web e AndroidEstudante de Sist. para Internet Pós-graduando em Admin em BD

2004-2009 Graduação em Ciências Socais (UFPB)

2009-2011 Mestrado em Relações Internacionais (UEPB)

Professor da Graduação em RI (UEPB)

2011-2012 Assistente de Pesquisa do IPEA (Brasília-DF)

2012-2013 Graduando em ADS (Faculdade Projeção)

Coord. Pedagógico de Tecnologia (Microcamp)

2014-2016 Aluno de Sistemas para Internet (Unipê)

Técnico de Suporte do Webcall

2015-2016 Club do Android (GDG JP)

Pós-graduando em Adm. de Banco de Dados

Desenvolvedor Web e Android no Webcall

2. Quero aprender Android,como faço?

Referências de Estudo http://www.android.com

Referências de Estudo http://developer.android.com/intl/pt-br/develop/index.html

Referências de Estudo Canal: Android Developers

Referências de Estudo http://android-developers.blogspot.com.br/

Referências de Estudo https://android-arsenal.com/

Referências de Estudo Livros

Referências de Estudo Cursos

Referências de Estudo Cursos

Referências de Estudo GDG João Pessoa

Google Study Jam

Referências de Estudo GDG João Pessoa

Club do Android

● Organização em equipes;

● Grupos de estudo;

● Desenvolvimento de apps;

● Workshops e Meetups;

● Compartilhamento de conhecimento.

3. Preparação para o Android

Importante

Preparação para o Android

Conceitos de Lógica de Programação

Paradigma de Orientação à Objetos

Linguagem de Programação Java

Linguagem de Marcação XML

Ambiente de Desenvolvimento

Principais Conceitos de Padrões de Projeto

Prática e Conceitos de Design GráficoNoções de Material DesignNoções de Usabilidade de Software

Preparação para o AndroidParadigma de OO

Encapsulamento Abstração Herança Polimorfismo

Pilares da Orientação à Objetos

Preparação para o AndroidLinguagem Java

Classes

Objetos

Atributos

Métodos

Sobre a Linguagem Java

Formas de Objeto

Criado a partir da forma

Características

Comportamentos

Preparação para o AndroidExemplo de Activity e métodos implementados

Preparação para o AndroidXML de onde vem para onde vai?

O que é XML? (eXtensible Markup Language)

O XML é um formato para a criação de documentos com dados organizados de forma hierárquica.

Ambiente de Desenvolvimento

Android Studio

Android Virtual Device

Genymotion

Virtualbox

Preparação para o AndroidVantagens do Android Studio

● IDE Oficial de app Android baseado no IntelliJ IDEA;

● Flexibilidade baseada no Gradle;

● Construção do apk;

● Modelos de código que auxiliam na padronização dos app;

● Editor com capacidade de drop-down;

● entre outros...

Preparação para o AndroidAndroid Studio

Preparação para o AndroidGenymotion

Necessário utilizar o Virtualbox.

Preparação para o AndroidTecnologia de Virtualização Intel VT-X

● Tecnologia de virtualização Intel VT-X;

○ KVM para Linux;

○ HAXM para Windows e OS X;

● Utilização de 80% da velocidade nativa do processador;

● Emulador 5x mais rápido.

Preparação para o AndroidIntel e o Android

4. Prática I: Hello world

Vamos criar um Hello World?

1. Abrir o Android Studio

2. Criar um novo projeto

3. Entender a estrutura do Android Studio

4. Criar uma AVD (Android Virtual Device)

5. Iniciar o Hello World na AVD

5. Prática II: Genymotion

Vamos configurar o Genymotion?

1. Instalar os pacotes

a. Virtualbox

b. Genymotion

2. Criar uma virtualização do Android

3. Macete: Google Play Services

4. Configuração no Android Studio

5. Iniciando o Hello World no Genymotion

Perguntas?Até aqui alguma dúvida?

Podemos continuar?

6. O Robozinho Verde da Googlelandia

O Robozinho Verde da GooglelandiaHistória das Versões do Android

Versão Nome Lançamento

Android 1.5 Cupcake 2009

Android 1.6 Donut 2009

Android 2.0 Eclair 2009

Android 2.2 Froyo 2010

Android 2.3 Gingerbread 2010

Android 3.0 Honeycomb 2011

Android 4.0 Ice Cream Sandwich 2011

Android 4.1 Jelly Bean 2012

Android 4.4 Kit Kat 2013

Android 5.0 Lollipop 2014

Android 6.0 Marshmallow 2015

Android 7.0 Andoid N 2016

O Robozinho Verde da GooglelandiaDalvik Virtual Machine

Compilação Compilação DEX DEX File

DEX File apkbuilder Interpretação

O Robozinho Verde da GooglelandiaConceitos sobre a estrutura de Apps

Conceitos fundamentais sobre a estrutura de aplicativos do Android

Fundamentos de aplicativos

➔ Android é um Linux multiusuário em que cada app é um usuário diferente;

➔ O sistema atribui a cada app um ID de usuário do Linux;

➔ Cada processo tem sua própria VM, sendo o código de um app executado isoladamente de outros apps;

➔ Cada aplicativo é executado em seu próprio processo Linux. O processo é iniciando quando necessário e finalizado da mesma forma, ou quando o sistema necessita recuperar memória.

Compatibilidade de Dispositivos

➔ Atenção com a diversidade de dispositivos, principalmente no que cerne aos recursos disponíveis;

➔ Estar atento ao controle dos recursos dos dispositivos, que podem ser configurados no arquivo manifest;

➔ Versão da plataforma. Deve-se configurar também no manifest quais versões mínimas e máximas que o app dará suporte;

➔ Desenvolver para o tamanho de tela correta, pois apesar da adaptabilidade do próprio Android, o ideal é poder otimizar a experiência do usuário.

O Robozinho Verde da GooglelandiaAs partes do Frankenstein

● Activity

● Intent

● Broadcast Receiver

● Content Provider

● Services

Activity

“Activity é um componente de

aplicativo que fornece uma tela com

a qual os usuários podem interagir

para fazer algo, como discar um

número no telefone, tirar uma foto,

enviar um e-mail ou ver um mapa”

O Robozinho Verde da GooglelandiaCiclo de Vida da Activity

● Apps possuem várias activitys;

● Cada activity pode iniciar outra activity;

● As activitys apresentam um ciclo de vida;

● O ciclo de vida das várias activitys são organizados como uma pilha;

O Robozinho Verde da GooglelandiaExemplo de Activity e métodos implementados

O Robozinho Verde da GooglelandiaActivity

As activitys devem possuir um layout!

JAVA XMLR

A classe R é responsável por gerenciar o acesso aos recursos de imagem, layout, menu, values, por exemplo. Este gerenciamento é realizado através da criação de constantes para acessar estes recursos.

Intent“A Intent é um objeto de mensagem que

pode ser usado para solicitar uma ação de outro componente de aplicativo”

O Robozinho Verde da GooglelandiaO que fazer com uma Intent?

O que podemos fazer com intent?

● Enviar msg ao SO;● Abrir uma nova tela do app;● Realizar uma ligação;● Abrir o browser com um endereço web;● Exibir endereço ou localização no G. Maps;● Executar Broadcast Reciver ou Service;● Enviar msg para outro app;● Abrir o Google Play para instalar outro app;● Compartilhar conteúdos nas Redes Sociais.

O Robozinho Verde da GooglelandiaExemplo de Intent

7. Introdução ao Material Design

Introdução ao Material DesignPrincípios

Material is the metaphor

Bold, graphic, intentional

Motion provides meaning

Introdução ao Material DesignApresentação

Introdução ao Material DesignApresentação

Introdução ao Material DesignExemplos

Introdução ao Material DesignCores

Introdução ao Material DesignAcessem

https://goo.gl/Wo02ne

8. Prática III: Aplicativo de Comparação

Aplicativo de Gasolina x Etanol

1. Criar novo projeto no Android Studio

2. Criando com uma Activity Básica

3. Utilizar cores do Material Design

9. Melhores Práticas

Passo 5 - Melhores Práticas

Ouça seus usuários

Melhore a estabilidade e

elimine os erros

Melhore a capacidade de resposta da UI

Melhore a Usabilidade

Melhore a aparência e

estética

Integre com sistema e

aplicativos de terceiros

Fonte: Improving App Quality; Android Developers Blog http://android-developers.blogspot.com.br/2010/10/improving-app-quality.html

10. Prática IV: App que compartilha mensagem

Aplicativo Criativo (Livre)

1. Criar novo projeto no Android Studio

2. Utilizar cores do Material Design

3. Utilizar Intents

Perguntas?Até aqui alguma dúvida?

Minicurso

Iniciando com Android

Androidos 2016

Messias R. Batista

www.mrafaelbatista.com.br

github.com/mrafaelbatista

top related