SlideShare ist ein Scribd-Unternehmen logo
1 von 60
Downloaden Sie, um offline zu lesen
Gerenciando 450 apps
sem enlouquecer
Heloisa Simon
Heloisa Simon
Lead Android Developer
mobLee
Como assim 450 apps?Como assim 450 apps?
2012
Módulo
Expositores
Green Valley
Módulo
Mapa do
evento
Módulo
Redes
Sociais
Módulo
Agenda
Dream Valley
Bienal
do Livro
Repositório GIT em 2012
2013
mobLee
Library
Congresso Y
Evento
Corporativo W
Feira de
Exposição X
Feira de
Exposição Y
Congresso X
Evento
Corporativo T
31º CBEM
Congresso Bras. de
Neurologia
Bienal do Livro
Repositório GIT em 2013
Para cada
evento
Strings
<resources>
<string name="section_info">Informaçõe
<string name="section_description">Des
<string name="section_detail">Detalhes
<string name="section_product_visitati
<string name="section_company_visitati
<string name="section_ongoing_visitati
<string name="section_contact">Contato
<string name="section_company">Empresa
<string name="section_about">Sobre</st
<string name="section_social">Redes so
<string name="section_job">Profissão</
<string name="section_comment">Comentá
<string name="section_qualification">Q
<string name="detail_title_stand">Esta
<string name="detail_title_address">En
<string name="detail_title_phone">Tele
<string name="detail_title_fax">Fax</s
<string name="detail_title_website">Si
Para cada
evento
Colors
<resources>
<color name="past_event_waiting">#9999
<color name="background_color">#F0F0F0
<color name="products">#29ABE2</color>
<color name="alarm_on">#8cc63f</color>
<color name="favorite_on">#f5b519</col
<color name="side_menu_color">#666666<
<color name="pressed_moblee_color">#AA
<color name="list_section_color">#6666
<color name="main_bar_color">#CCCCCC</
<color name="button_color">#E9145F</co
<color name="calendar_line">#BBBBBB</c
<color name="calendar_second_line">#AA
<color name="text">#636363</color>
<color name="pager_indicator">#666666<
<color name="pending_approval">#F7931E
<color name="rating5">#F15A24</color>
<color name="rating4">#F7931E</color>
<color name="rating3">#FBB03B</color>
Para cada
evento
Drawables
Para cada
evento
Screenshots
Para cada
evento
Publicação no
Google Play
● Assinar com chave
● Exportar APK
Para cada
evento
Publicação no
Google Play
● Gerar Screenshots
e fazer upload
Para cada
evento
Repositório git
● Criar repositório
● git push
INVIÁVEL
2015
Automatizando
O checklist
● Dados no backend
○ Cores
○ Strings
○ Imagens
○ Funcionalidades
● Script
● APK por linha de comando
Automatizando
O checklist
● API REST
{
last_update: 1473130828,
store_name: {
pt: "net.moblee.bienalsp"
},
app_name: {
pt: "Bienal do Livro São Paulo"
},
app_description: {
pt: "Saiba tudo sobre a Bienal do Livr
},
event_longitude: {
pt: "-46.64303152065429"
},
event_latitude: {
pt: "-23.516197514160964"
},
event_timezone: {
Automatizando
O checklist
● Script
○ Le dados da API REST e
substitui nos arquivos
string.xml, colors.xml
○ Faz download das imagens
necessárias: launcher,
ícones, splashscreen
○ Configura o gradle com o
applicationId e endpoints
○ Configura funcionalidades
○ Assina e Gera APK
Automatizando
● Gradle: Analytics, API Keys, Endpoints
android {
…
defaultConfig {
applicationId [APPLICATION_ID]
minSdkVersion 16
targetSdkVersion 24
versionCode [VERSION_CODE]
versionName [VERSION_NAME]
buildConfigField "String", "ENDPOINT", [END_POINT]
buildConfigField "String", "ANALYTICS", [ANALYTICS]
buildConfigField "String", "PARSE_APP_ID", [APP_ID]
buildConfigField "String", "PARSE_CLIENT_KEY", [CLIENT_KEY]
…
}
Automatizando
APK por linha de comando
./gradlew assembleDebug
./gradlew assembleRelease
buildTypes {
debug {
applicationIdSuffix ".dbg"
}
release {
proguardFiles getDefaultProguardFi
}
}
mobLee
Framework
Repositório GIT em 2015
Automatizando
Screenshots
● Existem formas de
automatizar
● No Photoshop
● A aprovação do cliente
normalmente é a
primeira etapa, por
isso não está junto com
o script.
Photoshop
Publicação
No Google Play
● Manual:
○ Criação de chaves
○ Criar app na loja
Publicação
No Google Play
● Mas todo o restante é
possível automatizar
● GET versionCode
https://www.googleapis.com/androidpublis
her/v2/applications/packageName/edits/ed
itId/tracks/track
● POST APK
https://www.googleapis.com/upload/androi
dpublisher/v2/applications/packageName/e
dits/editId/apks
● POST screenshots
https://www.googleapis.com/upload/androi
dpublisher/v2/applications/packageName/e
dits/editId/listings/language/imageType
Publicação
Google Play Developer API
Automatização
Jenkins
● Integração Contínua
○ Compilação de projeto
○ Automatização de testes
● Independente de plataforma
○ Android e iOS
● Faz checkout no master
● Executa script
● Gera APK
● Faz upload no slack
Automatização
Jenkins-Plugin
google-play-android-publisher
Automatização
● Disponível para Android e
iOS
○ Build
○ Roda testes
○ Tira screenshots
○ Faz upload das screenshots
○ Gera certificados (iOS)
● fastlane supply
○ Faz upload do APK no Google
Play
● fastlane screengrab
○ Tira screenshots
Fastlane
Automatização
Fastlane
default_platform: android
platform :android do
desc "Roda testes"
Lane :test do
gradle(task: "test")
end
desc "Envia nova versão para o Google
lane :deploy do
gradle(task: "assembleRelease")
supply
end
Será que a automatização resolveu tudo?
Atualizações
Dos aplicativos
● Alterações:
○ Ícones
○ Strings
○ Cores
○ Funcionalidades
● Verificar as alterações
● Rodar script
Atualizações
Dos aplicativos
Dinamizar é tão importante quanto Automatizar
Dinamizando
O aplicativo
● Todas as strings
podem ser alteradas
● Todas as cores
podem ser alteradas
● Todos os ícones
podem ser alterados.
● Todas as funcionalidades
podem ser alteradas.
Dinamizando
O aplicativo
● Requisições para a API
● String: verifica se foi
atualizada, senão usa do
strings.xml
● Colors: verifica se foi
atualizada, senão usa do
colors.xml
● Funcionalidades com flag
e permissões de acesso.
Dinamizando
O aplicativo
Dinamizando
O aplicativo
Mas quem vai configurar
tudo no backend?
Dinamizando
O aplicativo
O CLIENTE!
Customer
Success
● Acompanham o cliente
● Recebem e-mail
● Publicam os aplicativos
Desenvolvedores
RELEASE
Customer Success
DEPLOY
Só tenho um aplicativo, não preciso dinamizar
Chegou o natal.
E agora?
Firebase
● Banco de Dados
● Analytics
● Autenticação
● Armazenamento
● Monitoramento de crash
● Remote Configs
<?xml version="1.0" encoding="utf-8"?>
<defaultsMap>
<entry>
<key>welcome_phrase</key>
<value>Welcome</value>
</entry>
<entry>
<key>primary_color</key>
<value>#A4CA39</value>
</entry>
<entry>
<key>android_image</key>
<value>http://www.example.com/androidimage.jpg</value>
</entry>
</defaultsMap>
mRemoteC.setDefaults(R.xml.remote_config_defaults);
String welcome = mRemoteC.getString("welcome_phrase");
String color = mRemoteC.getString("primary_color");
String image = mRemoteC.getString("android_image");
mRemoteC.fetch(cacheExpiration)
.addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(Task<Void> task) {
if (task.isSuccessful()) {
mRemoteC.activateFetched();
}
}
});
RESUMÃO
● Identifique repetições
○ Atacar tarefas longas
● Automatize tarefas
● Automatize a publicação
● Evite atualização
○ Dinamize o app
● Use ferramentas!
Não reinvente a roda
Gerenciando 450 apps
sem enlouquecer
Obrigada
heloisa@moblee.net

Weitere ähnliche Inhalte

Was ist angesagt?

Aplicativos Móveis: PWA, Instants Apps. Vamos entender?
Aplicativos Móveis: PWA, Instants Apps. Vamos entender?Aplicativos Móveis: PWA, Instants Apps. Vamos entender?
Aplicativos Móveis: PWA, Instants Apps. Vamos entender?Pedro Edson Silva Barros
 
Criando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma APICriando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma APIJessica Zanelato Soares
 
Python com qualidade - testes funcionais com Python e Selenium Webdriver
Python com qualidade - testes funcionais com Python e Selenium WebdriverPython com qualidade - testes funcionais com Python e Selenium Webdriver
Python com qualidade - testes funcionais com Python e Selenium WebdriverRobson Agapito Correa
 
Coders on beer - git rebase
Coders on beer - git rebaseCoders on beer - git rebase
Coders on beer - git rebaseFilipe Mondaini
 
Testes em uma arquitetura com messageria/streaming (Kafka)
Testes em uma arquitetura com messageria/streaming (Kafka)Testes em uma arquitetura com messageria/streaming (Kafka)
Testes em uma arquitetura com messageria/streaming (Kafka)Robson Agapito Correa
 
Phonegap autorefresh - app direto no celular sem emulador
Phonegap autorefresh - app direto no celular sem emuladorPhonegap autorefresh - app direto no celular sem emulador
Phonegap autorefresh - app direto no celular sem emuladorAfonso Fernandes
 
React Native - Experiência Nativa para o usuário e experiência Web para o des...
React Native - Experiência Nativa para o usuário e experiência Web para o des...React Native - Experiência Nativa para o usuário e experiência Web para o des...
React Native - Experiência Nativa para o usuário e experiência Web para o des...Emiliano Barbosa
 
Introdução a Android Instant Apps
Introdução a Android Instant AppsIntrodução a Android Instant Apps
Introdução a Android Instant AppsSuelen Carvalho
 
Desenvolvendo aplicativos nativos com React Native
Desenvolvendo aplicativos nativos com React NativeDesenvolvendo aplicativos nativos com React Native
Desenvolvendo aplicativos nativos com React NativeLuís Felipe Souza
 
A aventura de um Agile Tester em uma empresa Waterfall Portuguesa
A aventura de um Agile Tester em uma empresa Waterfall PortuguesaA aventura de um Agile Tester em uma empresa Waterfall Portuguesa
A aventura de um Agile Tester em uma empresa Waterfall PortuguesaRobson Agapito Correa
 
Angular 2: O que mudou do Angular 1, ES6 e Typescript
Angular 2: O que mudou do Angular 1, ES6 e TypescriptAngular 2: O que mudou do Angular 1, ES6 e Typescript
Angular 2: O que mudou do Angular 1, ES6 e TypescriptMatheus Cardoso
 
Opções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasOpções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasJose Papo, MSc
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Performance ao extremo para aplicações Web Mobile
Performance ao extremo para aplicações Web MobilePerformance ao extremo para aplicações Web Mobile
Performance ao extremo para aplicações Web MobileAlexandre Tarifa
 
Introdução ao PhoneGap e Sencha Touch
Introdução ao PhoneGap e Sencha TouchIntrodução ao PhoneGap e Sencha Touch
Introdução ao PhoneGap e Sencha TouchRafael Neri
 
Talk7 - Da concepção ao desenvolvimento de um aplicativo de mensagens
Talk7 - Da concepção ao desenvolvimento de um aplicativo de mensagensTalk7 - Da concepção ao desenvolvimento de um aplicativo de mensagens
Talk7 - Da concepção ao desenvolvimento de um aplicativo de mensagensElo7
 
instalação do phonegap(cordova) no windows 8.1
instalação do phonegap(cordova) no windows 8.1instalação do phonegap(cordova) no windows 8.1
instalação do phonegap(cordova) no windows 8.1Afonso Fernandes
 
Enterprise Integration Patterns na nuvem com Spring Integration
Enterprise Integration Patterns na nuvem com Spring IntegrationEnterprise Integration Patterns na nuvem com Spring Integration
Enterprise Integration Patterns na nuvem com Spring IntegrationEdson Yanaga
 
Performance ao extremo para aplicações Web Mobile Apresentaçao por Alexandre ...
Performance ao extremo para aplicações Web Mobile Apresentaçao por Alexandre ...Performance ao extremo para aplicações Web Mobile Apresentaçao por Alexandre ...
Performance ao extremo para aplicações Web Mobile Apresentaçao por Alexandre ...Paulo Fernandes
 

Was ist angesagt? (20)

Aplicativos Móveis: PWA, Instants Apps. Vamos entender?
Aplicativos Móveis: PWA, Instants Apps. Vamos entender?Aplicativos Móveis: PWA, Instants Apps. Vamos entender?
Aplicativos Móveis: PWA, Instants Apps. Vamos entender?
 
Conhecendo o PhoneGap
Conhecendo o PhoneGapConhecendo o PhoneGap
Conhecendo o PhoneGap
 
Criando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma APICriando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma API
 
Python com qualidade - testes funcionais com Python e Selenium Webdriver
Python com qualidade - testes funcionais com Python e Selenium WebdriverPython com qualidade - testes funcionais com Python e Selenium Webdriver
Python com qualidade - testes funcionais com Python e Selenium Webdriver
 
Coders on beer - git rebase
Coders on beer - git rebaseCoders on beer - git rebase
Coders on beer - git rebase
 
Testes em uma arquitetura com messageria/streaming (Kafka)
Testes em uma arquitetura com messageria/streaming (Kafka)Testes em uma arquitetura com messageria/streaming (Kafka)
Testes em uma arquitetura com messageria/streaming (Kafka)
 
Phonegap autorefresh - app direto no celular sem emulador
Phonegap autorefresh - app direto no celular sem emuladorPhonegap autorefresh - app direto no celular sem emulador
Phonegap autorefresh - app direto no celular sem emulador
 
React Native - Experiência Nativa para o usuário e experiência Web para o des...
React Native - Experiência Nativa para o usuário e experiência Web para o des...React Native - Experiência Nativa para o usuário e experiência Web para o des...
React Native - Experiência Nativa para o usuário e experiência Web para o des...
 
Introdução a Android Instant Apps
Introdução a Android Instant AppsIntrodução a Android Instant Apps
Introdução a Android Instant Apps
 
Desenvolvendo aplicativos nativos com React Native
Desenvolvendo aplicativos nativos com React NativeDesenvolvendo aplicativos nativos com React Native
Desenvolvendo aplicativos nativos com React Native
 
A aventura de um Agile Tester em uma empresa Waterfall Portuguesa
A aventura de um Agile Tester em uma empresa Waterfall PortuguesaA aventura de um Agile Tester em uma empresa Waterfall Portuguesa
A aventura de um Agile Tester em uma empresa Waterfall Portuguesa
 
Angular 2: O que mudou do Angular 1, ES6 e Typescript
Angular 2: O que mudou do Angular 1, ES6 e TypescriptAngular 2: O que mudou do Angular 1, ES6 e Typescript
Angular 2: O que mudou do Angular 1, ES6 e Typescript
 
Opções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasOpções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e Arquiteturas
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Performance ao extremo para aplicações Web Mobile
Performance ao extremo para aplicações Web MobilePerformance ao extremo para aplicações Web Mobile
Performance ao extremo para aplicações Web Mobile
 
Introdução ao PhoneGap e Sencha Touch
Introdução ao PhoneGap e Sencha TouchIntrodução ao PhoneGap e Sencha Touch
Introdução ao PhoneGap e Sencha Touch
 
Talk7 - Da concepção ao desenvolvimento de um aplicativo de mensagens
Talk7 - Da concepção ao desenvolvimento de um aplicativo de mensagensTalk7 - Da concepção ao desenvolvimento de um aplicativo de mensagens
Talk7 - Da concepção ao desenvolvimento de um aplicativo de mensagens
 
instalação do phonegap(cordova) no windows 8.1
instalação do phonegap(cordova) no windows 8.1instalação do phonegap(cordova) no windows 8.1
instalação do phonegap(cordova) no windows 8.1
 
Enterprise Integration Patterns na nuvem com Spring Integration
Enterprise Integration Patterns na nuvem com Spring IntegrationEnterprise Integration Patterns na nuvem com Spring Integration
Enterprise Integration Patterns na nuvem com Spring Integration
 
Performance ao extremo para aplicações Web Mobile Apresentaçao por Alexandre ...
Performance ao extremo para aplicações Web Mobile Apresentaçao por Alexandre ...Performance ao extremo para aplicações Web Mobile Apresentaçao por Alexandre ...
Performance ao extremo para aplicações Web Mobile Apresentaçao por Alexandre ...
 

Ähnlich wie Gerenciando 450 apps com automação e dinamização

InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecerInterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouqueceriMasters
 
Android Lollipop e Android Wear
Android Lollipop e Android WearAndroid Lollipop e Android Wear
Android Lollipop e Android WearSilas Limeira
 
Aula 1 view model livedata e databinding.pptx
Aula 1   view model livedata e databinding.pptxAula 1   view model livedata e databinding.pptx
Aula 1 view model livedata e databinding.pptxRicardo Ogliari
 
Desenvolvimento Android: Faça da maneira certa
Desenvolvimento Android: Faça da maneira certaDesenvolvimento Android: Faça da maneira certa
Desenvolvimento Android: Faça da maneira certaNelson Glauber Leal
 
Introdução à programação em Android SENAC 17.06.2013
Introdução à programação em Android SENAC 17.06.2013Introdução à programação em Android SENAC 17.06.2013
Introdução à programação em Android SENAC 17.06.2013guisester
 
12 Factor APPS Docker na Cloud e outras buzzwords
12 Factor APPS Docker na Cloud e outras buzzwords12 Factor APPS Docker na Cloud e outras buzzwords
12 Factor APPS Docker na Cloud e outras buzzwordsFernando Ruaro
 
12 Factor APPS, docker na cloud e outras buzzwords
12 Factor APPS, docker na cloud e outras buzzwords12 Factor APPS, docker na cloud e outras buzzwords
12 Factor APPS, docker na cloud e outras buzzwordsWaldemar Neto
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Androidguisester
 
APIs: o que são? onde vivem? do que se alimentam? [PyNE2016]
APIs: o que são? onde vivem? do que se alimentam? [PyNE2016]APIs: o que são? onde vivem? do que se alimentam? [PyNE2016]
APIs: o que são? onde vivem? do que se alimentam? [PyNE2016]Filipe Ximenes
 
GSoC tcptest - TCP/IP Regression Test
GSoC tcptest - TCP/IP Regression TestGSoC tcptest - TCP/IP Regression Test
GSoC tcptest - TCP/IP Regression TestVictor Hugo Bilouro
 
Phonegap - Framework Mobile
Phonegap - Framework MobilePhonegap - Framework Mobile
Phonegap - Framework MobileIldyone Martins
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012guisester
 
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGapAplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGapThiago Colares
 
SESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidSESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidRafael Sakurai
 
TDC2016POA | Trilha Web - Realidade Virtual com WebVR
TDC2016POA | Trilha Web -  Realidade Virtual com WebVRTDC2016POA | Trilha Web -  Realidade Virtual com WebVR
TDC2016POA | Trilha Web - Realidade Virtual com WebVRtdc-globalcode
 
Introdução ao Desenvolvimento para Android
Introdução ao Desenvolvimento para AndroidIntrodução ao Desenvolvimento para Android
Introdução ao Desenvolvimento para AndroidMário Valney
 

Ähnlich wie Gerenciando 450 apps com automação e dinamização (20)

InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecerInterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
 
Android Lollipop e Android Wear
Android Lollipop e Android WearAndroid Lollipop e Android Wear
Android Lollipop e Android Wear
 
Aula 1 view model livedata e databinding.pptx
Aula 1   view model livedata e databinding.pptxAula 1   view model livedata e databinding.pptx
Aula 1 view model livedata e databinding.pptx
 
Desenvolvimento Android: Faça da maneira certa
Desenvolvimento Android: Faça da maneira certaDesenvolvimento Android: Faça da maneira certa
Desenvolvimento Android: Faça da maneira certa
 
Introdução à programação em Android SENAC 17.06.2013
Introdução à programação em Android SENAC 17.06.2013Introdução à programação em Android SENAC 17.06.2013
Introdução à programação em Android SENAC 17.06.2013
 
12 Factor APPS Docker na Cloud e outras buzzwords
12 Factor APPS Docker na Cloud e outras buzzwords12 Factor APPS Docker na Cloud e outras buzzwords
12 Factor APPS Docker na Cloud e outras buzzwords
 
12 Factor APPS, docker na cloud e outras buzzwords
12 Factor APPS, docker na cloud e outras buzzwords12 Factor APPS, docker na cloud e outras buzzwords
12 Factor APPS, docker na cloud e outras buzzwords
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Android
 
APIs: o que são? onde vivem? do que se alimentam? [PyNE2016]
APIs: o que são? onde vivem? do que se alimentam? [PyNE2016]APIs: o que são? onde vivem? do que se alimentam? [PyNE2016]
APIs: o que são? onde vivem? do que se alimentam? [PyNE2016]
 
GSoC tcptest - TCP/IP Regression Test
GSoC tcptest - TCP/IP Regression TestGSoC tcptest - TCP/IP Regression Test
GSoC tcptest - TCP/IP Regression Test
 
Phonegap - Framework Mobile
Phonegap - Framework MobilePhonegap - Framework Mobile
Phonegap - Framework Mobile
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012
 
Os3
Os3Os3
Os3
 
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGapAplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
Aplicações Híbridas para Dispositivos Móveis com AngularJS e PhoneGap
 
Apresentação Google Android
Apresentação Google AndroidApresentação Google Android
Apresentação Google Android
 
SESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao AndroidSESTINFO 2011 Apresentacao Android
SESTINFO 2011 Apresentacao Android
 
Android
AndroidAndroid
Android
 
TDC2016POA | Trilha Web - Realidade Virtual com WebVR
TDC2016POA | Trilha Web -  Realidade Virtual com WebVRTDC2016POA | Trilha Web -  Realidade Virtual com WebVR
TDC2016POA | Trilha Web - Realidade Virtual com WebVR
 
Curso Básico Android - Aula 01
Curso Básico Android - Aula 01Curso Básico Android - Aula 01
Curso Básico Android - Aula 01
 
Introdução ao Desenvolvimento para Android
Introdução ao Desenvolvimento para AndroidIntrodução ao Desenvolvimento para Android
Introdução ao Desenvolvimento para Android
 

Mehr von iMasters

O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroO que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroiMasters
 
Postgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio TellesPostgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio TellesiMasters
 
Por que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen MoraesPor que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen MoraesiMasters
 
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...iMasters
 
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesiMasters
 
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...iMasters
 
Arquitetando seus dados na prática para a LGPD - Alessandra Martins
Arquitetando seus dados na prática para a LGPD - Alessandra MartinsArquitetando seus dados na prática para a LGPD - Alessandra Martins
Arquitetando seus dados na prática para a LGPD - Alessandra MartinsiMasters
 
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...iMasters
 
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana ChahoudDesenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana ChahoudiMasters
 
Use MDD e faça as máquinas trabalharem para você - Andreza Leite
 Use MDD e faça as máquinas trabalharem para você - Andreza Leite Use MDD e faça as máquinas trabalharem para você - Andreza Leite
Use MDD e faça as máquinas trabalharem para você - Andreza LeiteiMasters
 
Entendendo os porquês do seu servidor - Talita Bernardes
Entendendo os porquês do seu servidor - Talita BernardesEntendendo os porquês do seu servidor - Talita Bernardes
Entendendo os porquês do seu servidor - Talita BernardesiMasters
 
Backend performático além do "coloca mais máquina lá" - Diana Arnos
Backend performático além do "coloca mais máquina lá" - Diana ArnosBackend performático além do "coloca mais máquina lá" - Diana Arnos
Backend performático além do "coloca mais máquina lá" - Diana ArnosiMasters
 
Dicas para uma maior performance em APIs REST - Renato Groffe
Dicas para uma maior performance em APIs REST - Renato GroffeDicas para uma maior performance em APIs REST - Renato Groffe
Dicas para uma maior performance em APIs REST - Renato GroffeiMasters
 
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
7 dicas de desempenho que equivalem por 21 - Danielle MonteiroiMasters
 
Quem se importa com acessibilidade Web? - Mauricio Maujor
Quem se importa com acessibilidade Web? - Mauricio MaujorQuem se importa com acessibilidade Web? - Mauricio Maujor
Quem se importa com acessibilidade Web? - Mauricio MaujoriMasters
 
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaService Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaiMasters
 
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto PascuttiErros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto PascuttiiMasters
 
Elasticidade e engenharia de banco de dados para alta performance - Rubens G...
Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...
Elasticidade e engenharia de banco de dados para alta performance - Rubens G...iMasters
 
Construindo aplicações mais confiantes - Carolina Karklis
Construindo aplicações mais confiantes - Carolina KarklisConstruindo aplicações mais confiantes - Carolina Karklis
Construindo aplicações mais confiantes - Carolina KarklisiMasters
 
Monitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe RegalgoMonitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe RegalgoiMasters
 

Mehr von iMasters (20)

O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroO que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
 
Postgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio TellesPostgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio Telles
 
Por que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen MoraesPor que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen Moraes
 
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
 
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
 
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
 
Arquitetando seus dados na prática para a LGPD - Alessandra Martins
Arquitetando seus dados na prática para a LGPD - Alessandra MartinsArquitetando seus dados na prática para a LGPD - Alessandra Martins
Arquitetando seus dados na prática para a LGPD - Alessandra Martins
 
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
 
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana ChahoudDesenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
 
Use MDD e faça as máquinas trabalharem para você - Andreza Leite
 Use MDD e faça as máquinas trabalharem para você - Andreza Leite Use MDD e faça as máquinas trabalharem para você - Andreza Leite
Use MDD e faça as máquinas trabalharem para você - Andreza Leite
 
Entendendo os porquês do seu servidor - Talita Bernardes
Entendendo os porquês do seu servidor - Talita BernardesEntendendo os porquês do seu servidor - Talita Bernardes
Entendendo os porquês do seu servidor - Talita Bernardes
 
Backend performático além do "coloca mais máquina lá" - Diana Arnos
Backend performático além do "coloca mais máquina lá" - Diana ArnosBackend performático além do "coloca mais máquina lá" - Diana Arnos
Backend performático além do "coloca mais máquina lá" - Diana Arnos
 
Dicas para uma maior performance em APIs REST - Renato Groffe
Dicas para uma maior performance em APIs REST - Renato GroffeDicas para uma maior performance em APIs REST - Renato Groffe
Dicas para uma maior performance em APIs REST - Renato Groffe
 
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
 
Quem se importa com acessibilidade Web? - Mauricio Maujor
Quem se importa com acessibilidade Web? - Mauricio MaujorQuem se importa com acessibilidade Web? - Mauricio Maujor
Quem se importa com acessibilidade Web? - Mauricio Maujor
 
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaService Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
 
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto PascuttiErros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
 
Elasticidade e engenharia de banco de dados para alta performance - Rubens G...
Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...
Elasticidade e engenharia de banco de dados para alta performance - Rubens G...
 
Construindo aplicações mais confiantes - Carolina Karklis
Construindo aplicações mais confiantes - Carolina KarklisConstruindo aplicações mais confiantes - Carolina Karklis
Construindo aplicações mais confiantes - Carolina Karklis
 
Monitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe RegalgoMonitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe Regalgo
 

Gerenciando 450 apps com automação e dinamização