SlideShare uma empresa Scribd logo
Aplicativos Híbridos com Ionic.
Você também pode começar a desenvolver agora!
Tiago Porto
tiagoporto
tiago@tiagoporto.com
ondeeuvimparar.com.br
tiagoporto.com
desenvolvedor front-end
designer
beer freak
viajador
1º Round
Case ilustrando as particularidades do
desenvolvimento mobile.
2º Round
Desenvolvendo com Ionic.
<o-desafio/>
•	Aplicativo para o Congresso Brasileiro de Coluna.
•	Recurso Principal: votação em tempo real.
•	Plataformas Android e iOS.
•	Aproximadamente 1 mês e meio de desenvolvimento
	 (com testes e publicação na Play Store e App Store).
•	Vida útil de 3 dias
	 (Dias do congresso).
<e-o-que-temos?/>
•	1 desenvolvedor front-end que
nunca fez um aplicativo.
•	E todos os outros envolvidos
marinheiros de primeira viagem.
O caminho que seguimos?
HÍBRIDONATIVO
Java Swift ou Objective-C
•	Proeficiência em cada uma das linguagens.
•	2 desenvolvimentos paralelos.
NATIVO
•	Proeficiência em desenvolvimento web.
•	1 único desenvolvimento - várias plataformas.
HÍBRIDO
E o escolhido foi?
Versão 1.0
<problemas/>
•	Componentes não otimizados.
•	Performance ruim.
•	Experiência do usuário comprometida.
•	Muita dificuldade para customizar componentes.
•	Dificuldade para integrar back-end com os componentes.
Free and open source, Ionic offers a library of mobile-optimized HTML,
CSS and JS components, gestures, and tools for building highly
interactive apps. Built with Sass and optimized for AngularJS.
Versão 2.0
Mas aí você pergunta, porque já não fez em Ionic?
— O caminho difícil é sempre o melhor, poxa!!!!!!!!
Mas aí você pergunta, porque já não fez em Ionic?
— Conhecia o jQuery Mobile de uns estudos bobos que tinha
feito há muito tempo. Vim a conhecer o Ionic no meio do
processo. É um projeto relativamente novo, tanto que foi
utilizada a versão alpha.
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-tiago-porto
<benefícios/>
Componentes performáticos.Arquitetura robusta. Design simples e funcional.
Componentes similares
aos do sistema nativo.
Uma poderosa CLI
Aplicativo para android e iOS, que possibilita
testar o aplicativo em desenvolvimento sem a
necessidade de instalação.
<problemas???/>
– Putz! o que já estudei e fiz de Angular.js é pouco (entenda quase nada).
– Também vou ter que aprender outro framework?
<soluções/>
Nada que 2 dias de estudo e prática não resolva.
Frameworks costumam ter muitas coisas em comum, um puxa o outro.
Além do mais, Ionic tem a premissa de ser divertido aprender.
<o-que-preciso-estudar?/>
•	Entenda como funciona as Rotas.
•	Leia um pouco sobre os controllers e os services.
•	E o principal, deixe um pouco de lado a manipulação do DOM
que estamos acostumados e caia de cabeça nas diretivas.
•	O resto é de boas, vai por mim.
•	Não precisa estudar todos os componentes do framework, vai
utilizando os que precisa agora, siga a documentação oficial.
•	A linha de aprendizado é muito rápida.
<o-que-preciso-estudar?/>
Necessários para utilizar funcionalidades do dispositivos como:
•	Acelerômetro
•	Câmera
•	GPS
•	Arquivos
•	etc
Basta linkar o plugin e utilizá-lo no javascript.
Os plugins de cordova são escritos na linguagem nativa de cada plataforma.
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-tiago-porto
<build/>
Obs: É necessário fazer algumas modificações no config.xml e montar o diretório
corretamente para upload.
•	Não necessita instalação de dependências.
•	Fácil manuseio das chaves e dos certificados para produção.
•	Fácil download do aplicativo com QRCode.
•	Um único upload gera o build para as plataformas necessárias.
Plataformas suportadas
<facilidades/>
Nitobi Software criou Phonegap - 2009
Adobe adquiriu Nitobi - 2011
Adobe doou o código Apache Software Foundation - 2011
Adobe ficou com a marca Adobe PhoneGap
E o projeto livre foi renomeado para Apache Cordova
<qual-a-diferença?/>
•	Foi criada API para acessar um banco MySQL e responder às
requisições com um JSON.
•	Aplicação web que exibia em tempo real o resultado da votação.
<o-que-mais-foi-necessário?/>
<ponderações/>
O aplicativo ficou perfeito?
Claro que não.
A maior parte do tempo gasto foi de
estudo e tentativas de erro e acerto.
Algumas pequenas funcionalidades
foram abortadas.
Como ficou a experiência para o usuário?
Relativamente boa, algumas coisas poderiam
ter sido feitas de forma diferente, o que só
vim a pensar depois que estava pronto.
Algumas transições do framework não estão
100%, mas acredito que com o passar do
tempo a comunidade do Ionic resolva isso.
Também tive problemas com diretivas do
angular como ng-show e ng-hide que não
funcionaram tão bem no iOS quanto no
Android.
É preciso muito teste nos dispositivos,
alguma coisa vai funcionar diferente em cada
plataforma e pode pedir outra solução.
<ponderações/>
Tirando os poréns o resultado ficou bom, atendeu à
demanda a tempo e trouxe bons frutos.
O importante é se aprimorar para o próximo projeto e
não cometer os mesmos erros.
<ponderações/>
+15mil requisições (dias do congresso)
755 Downloads
<números/>
Agora a parte que interessa.
Desenvolvimento com Ionic.
<dependências/>
GIT
Node.js
NPM
Vai utilizar Sass?
Ruby
Gem do sass
...Instalando IONIC
$ npm install -g cordova ionic
... Iniciando o projeto
$ ionic start nomeProjeto template
opções de template disponíveis
blank
tabs (default)
sidemenu
blank
<templates/>
tabs sidemenu
<diretório/>
Principais arquivos e diretórios
scss - Contém o arquivo inicial para desenvolvimento em sass
www/js/app.js - Configuração das rotas do angular
www/js/controllers.js
- back-end do aplicativo
www/js/services.js
www/lib - bibliotecas gerenciadas pelo bower
www/templates - páginas do app gerenciadas pelo app.js
config.xml - configuração do aplicativo para build
... adicionando plataformas
$ ionic platform ios android
<splashscreen-e-ícone-automáticos/>
•	Crie o diretório resources na raiz do projeto.
•	Coloque os arquivos icon e splash dentro de
resources.
*Arquivos suportados: .psd, .png e .ai
<splashscreen-e-ícone-para-cada-plataforma/>
•	Dentro do diretório resources, crie os
diretórios para as plataformas desejadas.
•	Coloque os arquivos icon e splash específicos
de cada plataforma em seus diretórios
respectivos.
<template-arquivo-icon/>
192px
192px
<template-arquivo-splashscreen/>
2208px
1200px
1200px
2208px
Área
segura
$ ionic resources
... gerando splashscreen e ícones
...utilizando Sass
$ ionic setup sass
...desenvolvimento e teste
$ ionic serve
Device Mode
$ ionic serve --lab
...ionic lab
Versões de android e ios lado a lado
...adicionando plugins do cordova
$ ionic plugin add org.apache.cordova.camera
Você pode adicionar os plugins pela url ou pelo id
$ ionic run android
...USB debugging
Inspect Device
Inspect Device
É necessário baixar o aplicativo para android ou ios.
Conta na apps.ionic.io.
$ ionic upload
...publicando o app no ionic view
<build-para-testes/>
Java JDK
ANDROID JDK
Apache ANT
OS X
Xcode
$ ionic build android|ios
...building
<distribuição/>
•	Conta de desenvolvedor.
•	Necessário acrescentar uma key
no build que é possível gerar pelo
JAVA.
•	Na play store leva uns 2 dias para
o app ser publicado.
•	Conta de desenvolvedor.
•	É necessário gerar um certificado
em um MAC e validá-lo online para
criar um certificado de distribuição.
•	Gerar um Profile de distribuição do
aplicativo, ligado ao certificado de
distribuição.
•	Leva aproximadamente 7 dias para
o app ser validado e publicado.
github.com/tiagoporto/desafio-mobile
Aplicativo desenvolvido como desafio do Meetup Mobile Dev BH - 18/04/15.
<quer-um-código-para-estudar?/>
Requisitos
•	SplashScreen.
•	Integrar com API do GitHub para buscar os dados de um usuário
informado no app.
•	Integrar com a Câmera do dispositivo para tirar uma foto e enviar
para o e-mail do usuário retornado pela API do GitHub.
•	2 horas para o desenvolvimento.
<híbrido-é-o-futuro?/>
<híbrido-é-o-futuro?/>
– Não faço ideia.
O fato é que as tecnologias Web cresceram muito rapidamente nos últimos
anos, e o JS foi uma das linguagens que mais se destacou.
Alguns Sistemas como Firefox OS e Ubuntu Touch já aceitam aplicativos html5
rodando como nativos. Há rumores que a Microsoft irá liberar também no
windows phone.
Será que num futuro próximos as maiores também não irão se render?
Perguntas?(Que eu saiba responder por favor)
Referências
https://angular.io/
https://cordova.apache.org/
http://ionicframework.com/
http://phonegap.com/
http://www.toptal.com/mobile/developing-mobile-applications-with-apache-cordova
http://tableless.com.br/introducao-ao-ionic-framework/
Links úteis
http://learn.ionicframework.com - Aprendendo ionic
http://codepen.io/ionic/public-list - Exemplos de uso do ionic
http://ionicframework.com/docs/components/ - Componentes do Ionic
https://docs.angularjs.org/guide - Guia para desenvolvimento com angular
https://docs.angularjs.org/api - Lista de toda a API do angular
http://ionicframework.com/docs/guide/installation.html - Configuração para build
https://ionicbrazil.herokuapp.com/ - Comunidade do Ionic do Brasil no Slack
Links bacanas
http://www.raymondcamden.com/2014/07/28/my-perspective-of-working-with-the-ionic-framework - Mais um
desenvolvedor que acredita no potencial do ionic.
https://medium.com/@sub_effect/adventures-in-apps-hybrids-for-the-amateur-6ef83cff335a - Um amador que já criou 5
aplicativos e aposta no Ionic
É isso ai!!
<obrigado/>

Mais conteúdo relacionado

PPTX
Curso: Desenvolvimento de aplicativos híbridos (dia 1)
PPTX
Curso: Desenvolvimento de aplicativos híbridos (dia 2)
PDF
Titanium appacelerator
ODP
Netbeans Slides Fy2009 Portugues
PDF
Mini curso - Ionic Framework
PDF
Hybrid app phonegap angular ionic
PPTX
Descomplicando o Mobile com Ionic Framework
PDF
Palestra UFPR - Intro Ionic framework + WordPress
Curso: Desenvolvimento de aplicativos híbridos (dia 1)
Curso: Desenvolvimento de aplicativos híbridos (dia 2)
Titanium appacelerator
Netbeans Slides Fy2009 Portugues
Mini curso - Ionic Framework
Hybrid app phonegap angular ionic
Descomplicando o Mobile com Ionic Framework
Palestra UFPR - Intro Ionic framework + WordPress

Mais procurados (20)

PDF
Desenvolvedor mobile precisa aprender Web
PDF
Lapidando o Globo Play
PPTX
Curso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e Ionic
PDF
TDC2018SP | Trilha Mobile - Learn once, code anywhere
PPTX
Workshop - Ionic + firebase
PPTX
Java CDI: Usando Java CDI em projetos Jakarta EE ou Microprofile
PDF
React Native
PPTX
Sinesio bittencourt - Ionic framework {Aplicações móveis híbridas}
PDF
Mobile First - Palestra no MobileConf 2013
PDF
Android Dev Conference 2017 - Automação de Testes na Cloud
PPTX
Ionic + Cordova para Desenvolvimento Mobile
PDF
Desenvolvendo para Android com PhoneGap
PDF
Hands on de desenvolvimento rápido de apllicações java ee com forge
PDF
Integrando WordPress com Ionic 3.
PDF
Phonegap
PPTX
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
PDF
Ionic 2 na pratica!
PDF
Desenvolvimento Multiplataforma com Appcelerator Titanium
PDF
Aplicativos Móveis: PWA, Instants Apps. Vamos entender?
PPTX
Desenvolvedor mobile precisa aprender Web
Lapidando o Globo Play
Curso de Desenvolvimento de Aplicativos Híbridos com PhoneGap/Cordova, e Ionic
TDC2018SP | Trilha Mobile - Learn once, code anywhere
Workshop - Ionic + firebase
Java CDI: Usando Java CDI em projetos Jakarta EE ou Microprofile
React Native
Sinesio bittencourt - Ionic framework {Aplicações móveis híbridas}
Mobile First - Palestra no MobileConf 2013
Android Dev Conference 2017 - Automação de Testes na Cloud
Ionic + Cordova para Desenvolvimento Mobile
Desenvolvendo para Android com PhoneGap
Hands on de desenvolvimento rápido de apllicações java ee com forge
Integrando WordPress com Ionic 3.
Phonegap
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
Ionic 2 na pratica!
Desenvolvimento Multiplataforma com Appcelerator Titanium
Aplicativos Móveis: PWA, Instants Apps. Vamos entender?
Anúncio

Semelhante a Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-tiago-porto (20)

PPTX
Hello world hybrid apps oportunidades com ionic framework v2
PPTX
Dominando o Ionic Framework
PPTX
Palestra GU Mobile (Ionic Framework) por Leonardo Quevedo
PDF
PPTX
Ionic framework V2/3 {Aplicações móveis híbridas}
PDF
Ionic Framework - Configuração do ambiente e a criação da primeira APP
PDF
Ionic 2 como ferramenta para desenvolvimento móvel
PDF
Palestra sobre desenvolvimento de aplicativos híbridos (SEMAC 2016)
PDF
Introducao ao Ionic 2 na pratica
PPTX
Workshop - Cordova e Ionic
PDF
Minicurso de Desenvolvimento Híbrido utilizando Ionic Framework
PDF
Mobile Dev - Aplicativos
PDF
Codifique uma vez, distribua em Android, iOS e Windows Phone
PDF
Ionic 3
PDF
Desenvolvimento Mobile Hibrido com Ionic e Angular - TDC Floripa 2015
PDF
[Fapan] criando aplicações mobile híbridas com ionic framework
PDF
Criando Aplicações Mobile Híbridas com Ionic Framework
PPT
Trabalho Framework Web mobile puc
PDF
Apps Híbridos e novas promessas Mobile.
PPTX
Conhecendo o Ionic
Hello world hybrid apps oportunidades com ionic framework v2
Dominando o Ionic Framework
Palestra GU Mobile (Ionic Framework) por Leonardo Quevedo
Ionic framework V2/3 {Aplicações móveis híbridas}
Ionic Framework - Configuração do ambiente e a criação da primeira APP
Ionic 2 como ferramenta para desenvolvimento móvel
Palestra sobre desenvolvimento de aplicativos híbridos (SEMAC 2016)
Introducao ao Ionic 2 na pratica
Workshop - Cordova e Ionic
Minicurso de Desenvolvimento Híbrido utilizando Ionic Framework
Mobile Dev - Aplicativos
Codifique uma vez, distribua em Android, iOS e Windows Phone
Ionic 3
Desenvolvimento Mobile Hibrido com Ionic e Angular - TDC Floripa 2015
[Fapan] criando aplicações mobile híbridas com ionic framework
Criando Aplicações Mobile Híbridas com Ionic Framework
Trabalho Framework Web mobile puc
Apps Híbridos e novas promessas Mobile.
Conhecendo o Ionic
Anúncio

Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-tiago-porto