none
Melhor caminho para comunicação cliente servidor... RRS feed

  • Discussão Geral

  • Pessoal, estaremos iniciando aqui um novo projeto q envolve a comunicação de dispositivos android com um servidor.

    Basicamente o mobile receberá uma lista de serviços de uma determinada cidade, o usuário poderá fazer um pedido e aguardar a entrega chegar no endereço cadastrado.

    O servidor será escrito em c# e os clientes em java(android).

    Qual tecnologia utilizar entre: sockets ou webservices?

    E qual os pros e contras das duas... a velocidade de comunicação e importante visto q será feito para funcionar com as redes de telefonia móvel.

    Vamos começar a discutir esse assunto? Um grande abraço a todos.


    Se a resposta foi útil, por favor marque como útil. Leia a bíblia.



    • Editado Tianodraco segunda-feira, 20 de maio de 2013 20:27
    segunda-feira, 20 de maio de 2013 20:25

Todas as Respostas

  • Pessoal dei uma pesquisada na net e vi q consumir webservice  a partir de dispositivos moveis não é muito recomendado devido ao custo q gera na rede....

    transcrevendo de http://zbra.com.br/2011/03/30/consumindo-web-service-em-aplicacoes-android/:

    "Vale observar que o consumo de Web Services em dispositivos móveis não é recomendado pela equipe de desenvolvimento do Android devido ao overhead que o processamento do SOAP exige. Se você tem controle sobre o servidor, o ideal é usar arquiteturas baseadas em REST tal como ODATA."

    Que vcs acham?


    Se a resposta foi útil, por favor marque como útil. Leia a bíblia.


    • Editado Tianodraco terça-feira, 21 de maio de 2013 11:42
    terça-feira, 21 de maio de 2013 11:39
  • Lendo ainda mais na web, descobri sobre o REST/JSON... achei um pouco complicado, mas isso é natural quando não se conhece a tecnologia.

    Basicamente, preciso criar um webservice(REST - JSON) em c# e consumi-lo a partir de uma aplicação android, via JSON.

    Alguem sabe por qual caminho eu posso começar, ou conhece algum tutorial q trate disso?

    Vi uns artigos do macoratti do asp.net MVC mas não consegui entender do meio  pro fim... precisaria de algo com uma didática mais calma.


    Se a resposta foi útil, por favor marque como útil. Leia a bíblia.

    terça-feira, 21 de maio de 2013 14:31
  • Tiano,

    MVC com Web API você acha tutorias ao quilos na internet:

    http://www.iwantmymvc.com/rest-service-mvc3
    http://www.codeproject.com/Articles/233572/Build-truly-RESTful-API-and-website-using-same-ASP

    Você pode estar fazendo isso com WCF também, veja:
    http://msdn.microsoft.com/pt-br/library/dd941696.aspx




    Vitor Mendes | Seu feedback é muito importante para todos!
    Visite o meu site: http://www.vitormendes.com.br/

    terça-feira, 21 de maio de 2013 14:38
  • Vitor muito obrigado por sua ajuda.... vou pesquisar bastante e manter este canal de comunicação aberto ok?

    Se a resposta foi útil, por favor marque como útil. Leia a bíblia.

    terça-feira, 21 de maio de 2013 15:45
  • Opa com certeza, este thread já é do tipo "discussão", então vamos discutir :D

    Nos mantenha informado, e qualquer duvida é só sinalizar.


    Vitor Mendes | Seu feedback é muito importante para todos!
    Visite o meu site: http://www.vitormendes.com.br/

    terça-feira, 21 de maio de 2013 16:26
  • Vitor vi alguns exemplos no site do macoratti e em outros sites, achei fantástico.

    Penso q o próximo passo, após criar a web api, é saber como um aplicativo android fará pra consumi-lo.

    Fora isso, fiquei com dúvida sobre a segurança... basicamente a api expõe seus results simplesmente utilizando uma chamada : www.nomedosite.com/api/metodo

    Então... como ficaria pra q eu pudesse bloquear o acesso para q apenas meu aplicativo pudesse fazer uso dessa api?


    Se a resposta foi útil, por favor marque como útil. Leia a bíblia.


    • Editado Tianodraco terça-feira, 21 de maio de 2013 19:30
    terça-feira, 21 de maio de 2013 19:28
  • Tiano,

    Pode ser através de um token ou usuário e senha. Você já deve ter notado que muitas API (Google, Microsoft, Wordpress e etc) tem disponibilizam um chave unica sua que deve ser informado junto a consulta, o mesmo vale para consumos REST.

    Vamos tomar como exemplo o site aqui de SP (http://olhovivo.sptrans.com.br/) ele mostra os itinerários do ônibus, porem não existe segurança (é aberto mesmo), eu posso monitorar pelo console do navegador (Chrome, IE, FIrefox) e recuperar a URL e usar na minha aplicação, exemplo deste ônibus aqui:

    http://200.189.189.54/InternetServices/Previsao?cb=jQuery17208414182343985885_1369164628664&codigoParada=260016859&codigoLinha=1877&_=1369164651283

    Me retornou um JSON de todos os ônibus na linha circulando agora.


    Vitor Mendes | Seu feedback é muito importante para todos!
    Visite o meu site: http://www.vitormendes.com.br/

    terça-feira, 21 de maio de 2013 19:34
  • Entendi, agora basta eu saber como farei tudo isso.

    Pra quem ta começando e difícil. Tenho toneladas de perguntas, mas não sei se aqui é o lugar certo pra falar disso, visto q muitas delas, apenas de utilizar um web service escrito em c#, diz respeito ao android, em como pesuisar informações de um banco de daos na web, atraves de um webservice.

    Acho q eu preciso inicialmente da um passo de cada vez, o primeiro deles seria: criar um wbservice(rest/json) capaz de gerenciar uma base de dados mysql... nos exemplos q eu vi ele gerou os dados no código, apenas pra efeito de demonstração.... penso q seria possível alí utilizar EF pra recuperar os dados de um banco de dados mysql... depois fazer operações CRUD em cima desses dados... esse é o primeiro passo.

    O segundo passo seria consumir esse serviço a partir de um aplicativo android, escrito em java... queria fazer tudo com C#, utilizando o XAMARIN, mas nao posso comprar aquilo por enquanto... vai ter q ser no eclipse, usando java mesmo. Então criar um código capaz de recuperar essas informações do nosso WS escrito em c#... mas apenas se a aplicação for autenticada, ou seja, enviando algo como um código (GUID) capoaz de validar e liberar o acesso para a aplicação, assim como vc falou... muitas dúvidas aqui nesse segundo passo... mas o q seria de nós, programadores, se não fosse o gosto de vencer esses desafios?


    Se a resposta foi útil, por favor marque como útil. Leia a bíblia.

    terça-feira, 21 de maio de 2013 20:15