SlideShare uma empresa Scribd logo
WEBSERVICES
Arthur Emanuel de Oliveira Carosia
Webservices
2
 Uso de serviços remotos disponibilizados por
outras aplicações.
 Integração
Webservices - REST
3
 Tem se consolidado como padrão quando se trata
de disponibilizar serviços na web.
 Características:
 Utilizar os métodos do protocolo HTTP para representar as
operações que pode ser executadas pelo serviço;
 Expor as informações através de URLs representativas,
similar a uma estrutura de diretórios;
 O serviço não deve armazenar estado entre requisições;
 Transmitir os dados em formato XML e/ou JSON;
 O uso de hypermedia para representar possíveis
transições.
Webservices - REST
4
 Temos então é uma URL que, quando
acessada, utilizando o método HTTP correto e
os parâmetros necessários, retorna dados em
formato texto.
JSON
5
 Para trafegar as informações, poderosa usar
JSON, JavaScript Object Notation
 formato simples de texto utilizado para
representar dados, voltado principalmente para a
conversão de dados estruturados para a forma
textual
Exemplo de Serviço
6
 Google Books API.
 Informações sobre livros
 Para ver como funciona um serviço REST e
verificar os dados retornados em formato JSON.
 Para testar, acesse a seguinte URL:
https://www.googleapis.com/books/v1/volumes
?q=android
Exemplo
7
 Implementar um aplicativo que realiza
consultas em Webservices.
 Uso de tarefas assíncronas, AsyncTasks, do
Android para realizar requisições HTTP com o
objetivo de não travar a aplicação enquanto o
acesso ao WS é realizado.
Acessando Webservice
8
 Incluir a permissão para acesso à Internet no
AndroidManifest.xml.
Layout
9
Acessando Webservice
10
 Não devemos acessar a rede a partir da
thread que está rodando a activity (UI thread).
 Isto bloquearia a interface gráfca
e poderia causar o erro de Application Not
Responding (ANR).
Acessando Webservice
11
 Para essa situação, o Android disponibiliza
através da classe AsyncTask uma forma simples
de criar tarefas assíncronas que executam
operações em background (em outra thread) e
que podem publicar os resultados da operação na
UI thread.
 Dentro da classe que busca do Webservice,
vamos criar uma classe privada que estende de
AsyncTask, para invocar o serviço.
Acessando Webservice
12

tipo dos parâmetros que são enviados
para a execução da tarefa.
Acessando Webservice
13

é o tipo que representa a unidade de
progresso da tarefa
Acessando Webservice
14

é o tipo de retorno da
operação realizada
AsyncTask
15
 Possui quatro etapas (métodos):
 onPreExecute
 invocado na UI thread antes da tarefa ser executada
 doInBackground
 é invocado em uma outra thread e é onde a operação
deve
ser implementada. Único método obrigatório.
 onProgressUpdate
 este método é invocado na UI thread após o
publishProgress ser executado
 onPostExecute
 também invocado na UI thread, este método recebe o
Result como parâmetro e faz as atualizações de tela
necessárias
Acessando Webservice
16
 Exibir um ProgressDialog na tela
Acessando Webservice
17
 Ao fnal do processamento iremos atualizar a
ListView com os resultados encontrados
Acessando Webservice
18
 Classe Util
 realizar uma requisição HTTP para uma URL,
que será montada a partir dos termos de busca
informados como parâmetro e em seguida,
processaremos a reposta obtida que está vem
formato JSON, criando um String[] com os dados.
19
20
21
"https://www.googleapis.com/books/v1/volumes?q=“
JSONArray resultados =
jsonObject.getJSONArray("items");
// montamos o resultado
String[] results = new String[resultados.length()];
for (int i = 0; i < resultados.length(); i++) {
JSONObject result = resultados.getJSONObject(i);
String empresa = result.getString("kind");
JSONObject volumeInfo =
result.getJSONObject("volumeInfo");
String title = volumeInfo.getString("title");
results[i] = title + empresa;
}
Acessando Webservice
22
 Invocando o acesso ao WS
Exercício
23
 Crie uma classe que acesse o WebService
dos correios e busque informações por CEP.
 Exiba os resultados em uma ListView.
Referências
24
 Google Android. Crie Aplicações para
Celulares e Tablets. Monteiro, J. Bosco. Casa
do Código.
 Desenvolvimento Mobile com Android. K19
Treinamentos.
 Android Developers. Disponível em:
http://developer.android.com/.
Referências Complementares
25
 http://www.devmedia.com.br/consumindo-
webservices-em-aplicacoes-android/26866
 http://www.theclub.com.br/restrito/revistas/201
309/andr1309.aspx
 http://www.k19.com.br/artigos/webservice-
restful-utilizando-json/
 http://www.k19.com.br/artigos/criando-um-
webservice-restful-em-java/

Mais conteúdo relacionado

PDF
Como criar um http proxy dinamico com mule parte 3
PDF
Substituindo o request message no mule
DOCX
Envio e configuração da carta de correção eletrônica
DOCX
Planejamento - DDMI - IFSP
PPTX
Aula 03 - Interface gráfica - Parte 1
DOCX
Projeto Android
PPTX
Android - Acelerometro e GPS
Como criar um http proxy dinamico com mule parte 3
Substituindo o request message no mule
Envio e configuração da carta de correção eletrônica
Planejamento - DDMI - IFSP
Aula 03 - Interface gráfica - Parte 1
Projeto Android
Android - Acelerometro e GPS

Destaque (16)

PPTX
HTML - Introducao
PPTX
Webservices Workshop - september 2014
PPTX
WebServices Basic Introduction
PPT
Webservices
PPT
Introduction of WebServices
PPTX
PPTX
HTML - Listas, Estilos, Tabelas, Div, Span, Formulário
PPTX
Aula - 04 - Android - Interface grafica (layout, widgets)
PPTX
Android - Google Maps
PPTX
Aula05 - Android - Persistência
PDF
Web Service Testing using TestComplete
PPTX
Android - Bluetooth
PPT
Webservices
PPTX
WebServices
PPTX
Testing web services
PPTX
Webservices Overview : XML RPC, SOAP and REST
HTML - Introducao
Webservices Workshop - september 2014
WebServices Basic Introduction
Webservices
Introduction of WebServices
HTML - Listas, Estilos, Tabelas, Div, Span, Formulário
Aula - 04 - Android - Interface grafica (layout, widgets)
Android - Google Maps
Aula05 - Android - Persistência
Web Service Testing using TestComplete
Android - Bluetooth
Webservices
WebServices
Testing web services
Webservices Overview : XML RPC, SOAP and REST
Anúncio

Semelhante a Android - Consumindo Webservices (20)

PDF
Consumindo dados via web service no android
PDF
INTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES REST
ODP
Criando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphere
PPTX
Android 03 - WebService
PPTX
Webservice
PDF
Curso Java (Parte 8) Web Service REST
PDF
Criando e consumindo webservice REST com PHP e JSON
PDF
Criando e consumindo webservice REST com PHP e JSON
PPT
Web Services - Grupo F
PDF
Programação Android Avançada - Acesso Web em Aplicações Android
PDF
Web Services com Apache Axis
PDF
TDC2016SP - Construindo Web APIs em Java na era do Big Data
ODP
Boas práticas no desenvolvimento de uma RESTful API
ODP
Boas práticas no desenvolvimento de uma RESTful API
PDF
JavaOne LATAM 2016 - Combinando AngularJS com Java EE
PDF
Introdução APIs RESTful
PDF
Transformando eficientemente resultados de uma consulta jdbc para json
PDF
Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3
PDF
Construindo APIs RESTful com Spring
PDF
APIs gerenciadas de ponta a ponta
Consumindo dados via web service no android
INTEGRAÇÃO DE APLICAÇÃO ANDROID COM WEB SERVICES REST
Criando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphere
Android 03 - WebService
Webservice
Curso Java (Parte 8) Web Service REST
Criando e consumindo webservice REST com PHP e JSON
Criando e consumindo webservice REST com PHP e JSON
Web Services - Grupo F
Programação Android Avançada - Acesso Web em Aplicações Android
Web Services com Apache Axis
TDC2016SP - Construindo Web APIs em Java na era do Big Data
Boas práticas no desenvolvimento de uma RESTful API
Boas práticas no desenvolvimento de uma RESTful API
JavaOne LATAM 2016 - Combinando AngularJS com Java EE
Introdução APIs RESTful
Transformando eficientemente resultados de uma consulta jdbc para json
Palestra Joomla Day Brasil 2014 - Extensão de Webservice para Joomla 3
Construindo APIs RESTful com Spring
APIs gerenciadas de ponta a ponta
Anúncio

Mais de Arthur Emanuel (20)

PPTX
Apresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
DOCX
Exercícios - Herança - Java
DOCX
Orientação a Objetos - Introdução - Exercícios
PPTX
Android - Integração com Facebook
PPTX
Desenvolvimento para Android - Acelerômetro, GPS, Multimidia
PPTX
Aula 06 - Desenvolvimento de Jogos para Android - Física e Menu
PPTX
Aula 05 - Desenvolvimento de Jogos para Android - Layout e Som
PPTX
Aula 04 - Desenvolvendo Jogos Para Android - Pontuação e Colisao
PPTX
Aula 03 - Desenvolvendo Jogos Para Android - Obstáculos
PPTX
Aula 02 - Desenvolvendo Jogos Para Android - Controle do Jogo
PPTX
Aula 01 - Desenvolvendo Jogos Para Android - Ambiente do Jogo
DOCX
Desenvolvendo Jogos Para Android - Exercício
PPTX
Java: Encapsulamento e modificadores de acesso
PPTX
Java: Collections
PPTX
Java: Classes Abstratas, Anônimas, Interface
PPTX
Java: Introducao ao Swing
PPTX
Java: Composicao e Array List
PPTX
Java: Heranca e polimorfismo
PPTX
Java: strings e arrays
PPTX
Java: Introdução à Orientação a Objetos
Apresentação - Minicurso de Introdução a Python, Data Science e Machine Learning
Exercícios - Herança - Java
Orientação a Objetos - Introdução - Exercícios
Android - Integração com Facebook
Desenvolvimento para Android - Acelerômetro, GPS, Multimidia
Aula 06 - Desenvolvimento de Jogos para Android - Física e Menu
Aula 05 - Desenvolvimento de Jogos para Android - Layout e Som
Aula 04 - Desenvolvendo Jogos Para Android - Pontuação e Colisao
Aula 03 - Desenvolvendo Jogos Para Android - Obstáculos
Aula 02 - Desenvolvendo Jogos Para Android - Controle do Jogo
Aula 01 - Desenvolvendo Jogos Para Android - Ambiente do Jogo
Desenvolvendo Jogos Para Android - Exercício
Java: Encapsulamento e modificadores de acesso
Java: Collections
Java: Classes Abstratas, Anônimas, Interface
Java: Introducao ao Swing
Java: Composicao e Array List
Java: Heranca e polimorfismo
Java: strings e arrays
Java: Introdução à Orientação a Objetos

Último (19)

PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
Processos na gestão de transportes, TM100 Col18
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PPTX
Aula 18 - Manipulacao De Arquivos python
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Custos e liquidação no SAP Transportation Management, TM130 Col18
Apple Pippin Uma breve introdução. - David Glotz
Processos na gestão de transportes, TM100 Col18
COBITxITIL-Entenda as diferença em uso governança TI
Aula 18 - Manipulacao De Arquivos python
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Aula04-Academia Heri- Tecnologia Geral 2025
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express

Android - Consumindo Webservices

  • 1. WEBSERVICES Arthur Emanuel de Oliveira Carosia
  • 2. Webservices 2  Uso de serviços remotos disponibilizados por outras aplicações.  Integração
  • 3. Webservices - REST 3  Tem se consolidado como padrão quando se trata de disponibilizar serviços na web.  Características:  Utilizar os métodos do protocolo HTTP para representar as operações que pode ser executadas pelo serviço;  Expor as informações através de URLs representativas, similar a uma estrutura de diretórios;  O serviço não deve armazenar estado entre requisições;  Transmitir os dados em formato XML e/ou JSON;  O uso de hypermedia para representar possíveis transições.
  • 4. Webservices - REST 4  Temos então é uma URL que, quando acessada, utilizando o método HTTP correto e os parâmetros necessários, retorna dados em formato texto.
  • 5. JSON 5  Para trafegar as informações, poderosa usar JSON, JavaScript Object Notation  formato simples de texto utilizado para representar dados, voltado principalmente para a conversão de dados estruturados para a forma textual
  • 6. Exemplo de Serviço 6  Google Books API.  Informações sobre livros  Para ver como funciona um serviço REST e verificar os dados retornados em formato JSON.  Para testar, acesse a seguinte URL: https://www.googleapis.com/books/v1/volumes ?q=android
  • 7. Exemplo 7  Implementar um aplicativo que realiza consultas em Webservices.  Uso de tarefas assíncronas, AsyncTasks, do Android para realizar requisições HTTP com o objetivo de não travar a aplicação enquanto o acesso ao WS é realizado.
  • 8. Acessando Webservice 8  Incluir a permissão para acesso à Internet no AndroidManifest.xml.
  • 10. Acessando Webservice 10  Não devemos acessar a rede a partir da thread que está rodando a activity (UI thread).  Isto bloquearia a interface gráfca e poderia causar o erro de Application Not Responding (ANR).
  • 11. Acessando Webservice 11  Para essa situação, o Android disponibiliza através da classe AsyncTask uma forma simples de criar tarefas assíncronas que executam operações em background (em outra thread) e que podem publicar os resultados da operação na UI thread.  Dentro da classe que busca do Webservice, vamos criar uma classe privada que estende de AsyncTask, para invocar o serviço.
  • 12. Acessando Webservice 12  tipo dos parâmetros que são enviados para a execução da tarefa.
  • 13. Acessando Webservice 13  é o tipo que representa a unidade de progresso da tarefa
  • 14. Acessando Webservice 14  é o tipo de retorno da operação realizada
  • 15. AsyncTask 15  Possui quatro etapas (métodos):  onPreExecute  invocado na UI thread antes da tarefa ser executada  doInBackground  é invocado em uma outra thread e é onde a operação deve ser implementada. Único método obrigatório.  onProgressUpdate  este método é invocado na UI thread após o publishProgress ser executado  onPostExecute  também invocado na UI thread, este método recebe o Result como parâmetro e faz as atualizações de tela necessárias
  • 16. Acessando Webservice 16  Exibir um ProgressDialog na tela
  • 17. Acessando Webservice 17  Ao fnal do processamento iremos atualizar a ListView com os resultados encontrados
  • 18. Acessando Webservice 18  Classe Util  realizar uma requisição HTTP para uma URL, que será montada a partir dos termos de busca informados como parâmetro e em seguida, processaremos a reposta obtida que está vem formato JSON, criando um String[] com os dados.
  • 19. 19
  • 20. 20
  • 21. 21 "https://www.googleapis.com/books/v1/volumes?q=“ JSONArray resultados = jsonObject.getJSONArray("items"); // montamos o resultado String[] results = new String[resultados.length()]; for (int i = 0; i < resultados.length(); i++) { JSONObject result = resultados.getJSONObject(i); String empresa = result.getString("kind"); JSONObject volumeInfo = result.getJSONObject("volumeInfo"); String title = volumeInfo.getString("title"); results[i] = title + empresa; }
  • 23. Exercício 23  Crie uma classe que acesse o WebService dos correios e busque informações por CEP.  Exiba os resultados em uma ListView.
  • 24. Referências 24  Google Android. Crie Aplicações para Celulares e Tablets. Monteiro, J. Bosco. Casa do Código.  Desenvolvimento Mobile com Android. K19 Treinamentos.  Android Developers. Disponível em: http://developer.android.com/.
  • 25. Referências Complementares 25  http://www.devmedia.com.br/consumindo- webservices-em-aplicacoes-android/26866  http://www.theclub.com.br/restrito/revistas/201 309/andr1309.aspx  http://www.k19.com.br/artigos/webservice- restful-utilizando-json/  http://www.k19.com.br/artigos/criando-um- webservice-restful-em-java/