Saltar para conteúdo


Foto
- - - - -

Web Service + Android app = Duvida


  • Por favor inicie sessão para responder
8 respostas a este tópico

#1 Carreira

Carreira

    Membro

  • Membros
  • PipPip
  • 11 mensagens

Mensagem publicada 07 November 2011 - 14:50

Boas pessoal,Estou a desenvolver um projecto que consiste em:*Base dados oracle;*Pagina web;*App mobile andoird.A ideia era criar web Services em C#(Visual Studio, pois a pag web tb esta a ser desenvolvida ai) e poder utiliza los na nossa aplicação android. Mas vai ser necessário enviar objecto do sistema para a app. mobile através de web service (ex. Pessoa) e nao sei ate que ponto isso é possível.Aguardo resposta atenciosamente.Cumprimentos,Carreira

#2 japc

japc

    Fã de Android

  • Membros
  • PipPipPip
  • 412 mensagens

Mensagem publicada 07 November 2011 - 15:04

A ideia era criar web Services em C#(Visual Studio pois a pag web tb esta a ser desenvolvida ai) e poder utiliza los na nossa aplicação android. Mas vai ser necessário enviar objecto do sistema para a app. mobile através de web service (ex. Pessoa) e nao sei ate que ponto isso é possível.

É perfeitamente possível se for a app a "puxar" do webservice.

#3 Carreira

Carreira

    Membro

  • Membros
  • PipPip
  • 11 mensagens

Mensagem publicada 08 November 2011 - 09:49

A ideia era criar web Services em C#(Visual Studio pois a pag web tb esta a ser desenvolvida ai) e poder utiliza los na nossa aplicação android. Mas vai ser necessário enviar objecto do sistema para a app. mobile através de web service (ex. Pessoa) e nao sei ate que ponto isso é possível.

É perfeitamente possível se for a app a "puxar" do webservice.

Boas,ja estive a procurar e encontrei uma solução com jSON mas eu gostava de uma solução mais ligada ao meu projecto.Por acaso, podes-me ajudar?CumpsCarreira

#4 LuisNabais

LuisNabais

    Membro

  • Membros
  • PipPip
  • 155 mensagens

Mensagem publicada 08 November 2011 - 15:48

O que tu queres é, através do Android, consumir um web service e utilizar métodos do mesmo, certo?Se sim, é só ver artigos como:Calling a web service from Android - http://www.anddev.or...id-t348.htmlHow to call a .NET web service from android? - http://stackoverflow...e-from-androidA pesquisa que fiz foi esta: http://www.google.pt...b serviceEspero que isto ajude.

#5 Carreira

Carreira

    Membro

  • Membros
  • PipPip
  • 11 mensagens

Mensagem publicada 15 November 2011 - 18:53

boas pessoal,Por agr ainda n consegui encontrar exatamente o que queria.Mas decidi entao começar a desenvolver a aplicação, mas sucede-se que quando chega á linha de codigo "http.call(SOAP_ACTION, envelope)" nao acontece exatamente nada. O web service esta a funcionar pk testei-o numa aplicação c#.Deixo aqui o codigo:
private static final String NAMESPACE = "http://tempuri.org/";    private static final String METHOD_NAME = "soma";    private static final String SOAP_ACTION = "http://tempuri.org/IService1/soma";    private static final String URL = "http://192.168.246.27/calc/Service1.svc";               public void acederWeb(){	    	    try {	        SoapObject requisicao = new SoapObject(NAMESPACE, METHOD_NAME);		        requisicao.addProperty("n1", 2);	        requisicao.addProperty("n2", 4); 		        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);	        envelope.dotNet = true; 	        envelope.setOutputSoapObject(requisicao); 		        HttpTransportSE http = new HttpTransportSE(URL); 	        http.call(SOAP_ACTION, envelope);                ...	    } catch (Exception e) {	        e.printStackTrace();	    }
cumprimentos

#6 japc

japc

    Fã de Android

  • Membros
  • PipPipPip
  • 412 mensagens

Mensagem publicada 15 November 2011 - 21:50

Porque é que tens o código todo comentado?

#7 Carreira

Carreira

    Membro

  • Membros
  • PipPip
  • 11 mensagens

Mensagem publicada 16 November 2011 - 09:27

Porque é que tens o código todo comentado?

Boas, Nao liguem por o codigo estar comentado. Andem a fazer teste e depois n cheguei a tirar quando passei para aqui o codigo.P.S.: Ja esta corrigido;

#8 Carreira

Carreira

    Membro

  • Membros
  • PipPip
  • 11 mensagens

Mensagem publicada 18 November 2011 - 10:59

Ajuda !!!!

#9 blackisback

blackisback

    Membro

  • Membros
  • PipPip
  • 58 mensagens

Mensagem publicada 18 November 2011 - 11:35

Viva,Deixo aqui um exemplo de código que usei em ambiente académico para demonstrar a utilização de um Web Service desenvolvido em C# a partir de um dispositivo Android.O Web Service era o seguinte:[code type=javascript] [WebService(Namespace = "http://PSM.isec.pt")] public class TesteWS : System.Web.Services.WebService { [WebMethod] public int Incrementa(int nr) { return nr + 1; } }[/code]No android:[code type=javascript]import org.ksoap2.SoapEnvelope;import org.ksoap2.serialization.SoapObject;import org.ksoap2.serialization.SoapPrimitive;import org.ksoap2.serialization.SoapSerializationEnvelope;import org.ksoap2.transport.HttpTransportSE;... private static final String URL = "http://192.168.15.216/TesteWS.asmx"; private static final String INCREMENTA_ACCAO_SOAP = "http://PSM.isec.pt/Incrementa"; private static final String INCREMENTA_NOME_METODO = "Incrementa"; private static final String INCREMENTA_NAMESPACE = "http://PSM.isec.pt"; int Incrementa(int nr) { int ret=nr; SoapObject request = new SoapObject(INCREMENTA_NAMESPACE, INCREMENTA_NOME_METODO); request.addProperty("nr", nr); SoapSerializationEnvelope envelope = new SoapSerializationEnvelope( SoapEnvelope.VER11); envelope.dotNet = true; envelope.setAddAdornments(false); envelope.implicitTypes=true; envelope.setOutputSoapObject(request); HttpTransportSE androidHttpTransport = new HttpTransportSE(URL); try { androidHttpTransport.call(INCREMENTA_ACCAO_SOAP, envelope); SoapPrimitive retint= (SoapPrimitive) envelope.getResponse(); Log.d("Teste",retint.toString()); Integer receivedInt=Integer.parseInt(retint.toString()); Log.d("Teste",""+receivedInt); ret=receivedInt; } catch (Exception e) { e.printStackTrace(); ret=-1; } return ret; }[/code]Espero que ajude...Cumprimentos,