android 03 - webservice

22
Desenvolvimento Android Aline Borges [email protected]

Upload: aline-borges

Post on 20-Aug-2015

242 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Android 03 - WebService

Desenvolvimento Android

Aline [email protected]

Page 2: Android 03 - WebService

Slides• Esta apresentação está disponível em:

http://bit.ly/android03_webservice

Trechos de códigos serão disponíveis em:

www.codeshare.io/lyhtt

Page 3: Android 03 - WebService

Objetivo

•App de Destinos de Viagem

• Lista de destinos de viagens• Ao clicar em um item, tela com mais detalhes

Page 4: Android 03 - WebService
Page 5: Android 03 - WebService

O que é WebService

•Web service é uma solução utilizada na integração de sistemas e na comunicação entre aplicações diferentes

• JSON•XML•etc

Page 6: Android 03 - WebService

Tipos

•SOAP (Simple Object Access Protocol)

•REST (Representational State Transfer)

Page 7: Android 03 - WebService

Tipos de retorno

• JSON•XML

Page 8: Android 03 - WebService

JSON• [• {• "id": 1,• "image_url": “http://caminhodaimagen/imagem.jpg",• "nome": "Loch Ard Gorge",• "regiao": "Great Ocean Road",• "pais": "Austrália",• "curiosidade": “Texto da curiosidade aqui",• "url": "http://destino.herokuapp.com/destinos/1.json"• }• ]

Page 9: Android 03 - WebService
Page 10: Android 03 - WebService

Baixar de forma asíncrona

•Baixar informações da internet pode ser uma operação demorada!

•Se a thread principal fica esperando, todo o app fica travado até a informação ser baixada!

Page 11: Android 03 - WebService

Novo Modelo

Page 12: Android 03 - WebService

Item layout• RelativeLayout

• Height = 10dp• Background = @color/accent

• Large Text• Id = txtNome

• Medium Text• Id = txtRegiao

• Small Text• Id = txtPais

• ImageView• Id = imageView• Height = 120dp• ScaleType = centerCrop• Src =

@drawable/destination_01

Page 13: Android 03 - WebService

DestinosAdapter

•Substituir “Produto” por “Destination”

•Fazer as adaptações necessárias

Page 14: Android 03 - WebService

Consumo de dados

•Modo clássico: Async Task• Bem confuso e difícil de entender

Page 15: Android 03 - WebService

Consumo de dados

•Bibliotecas famosas que ajudam na utilização de WebServices:• Retrofit (Square)• Volley (Google IO 2013)• Annotations (Pierre-Yves Ricau)

Page 16: Android 03 - WebService
Page 17: Android 03 - WebService

WebService

http://destino.herokuapp.com/destinos

Page 18: Android 03 - WebService

Retrofit• Build.Grade

• compile 'com.squareup.retrofit:retrofit:1.9.0'

Page 19: Android 03 - WebService

Package Services

Page 20: Android 03 - WebService

New RestAdapter

Page 21: Android 03 - WebService

Chamando o WebService

Page 22: Android 03 - WebService

Obrigada!

•Aline K Borges•[email protected]