Android com webservice PHP

Bom dia pessoal.

Preciso de ajuda, pois estou começando um projeto do zero.

Preciso basicamente fazer o app android se comunicar com o webservice PHP utilizando JSON.

Desculpem minha ignorância, mas poderiam ajudar com algum tutorial ou algo do tipo?

Obrigado.

Dê uma olhada no Canal do Dulo ele tem 5 video-aula explicando desde como se faz uma WebService até consumir ela no android. Acessando esse LINK

OBS: Pause o video e copie linha por linha, Para melhor entedimento.

1 curtida

João, te agradeço pela ajuda. Foi realmente muito importante essa ajuda, e consegui entender o funcionamento.

Com os vídeos, eu fiz o meu server php, com consulta ao bd…

No meu app eu preciso selecionar um estado, e enviar esse estado ao servidor, onde o servidor devolve todas as cidades do estado selecionado.

Eu não consegui enviar essa variável POST para o php, para que ele consiga saber o estado selecionado e devolver a consulta baseada nesse estado.

Você poderia me indicar algum material onde eu consiga entender esse envio de variáveis get e post ao webservice?

E mais uma vez, muito obrigado pela ajuda.

Focando no usuário…
Hoje em dia quanto menor for a trafego de dados de internet do usuario, Melhor para ele…

Eu recomendo que você salve o script desses estados e cidade no SqLite…

Vamos supor: Coloque 2 spiner, Um Estado e outro Cidade. Ai faça uma comparação e logo depois sete as cidades do mesmo no prox. spiner.

Fazendo Isso é so enviar as informações dos spiners para o servidor.

Mas se você quiser fazer do seu jeito, eu ainda não assisti o conteudo mas eu acho que vai servir acesse o link

João, em primeiro lugar obrigado pela ajuda…

Demorei para responder pois estava tentando resolver o problema…

Esse segundo vídeo não me ajudou, mas depois de muita pesquisa, eu consegui fazer a integração com o webservice.

Agora meu app manda um Estado para o webservice que devolve um json com os Ids e Nomes das cidades…

Só falta fazer esse json popular meu spinner… Esta parte também não tenho achado muito material de apoio.

PS: Entendo que devemos consumir o mínimo de dados possíveis do usuário, mas pelo aplicativo possuir um número baixo de cidades em cada estado, achei viável usar o webservice. Até porqueas cidades serão de acordo com algumas inserções e exclusões, então essa lista será muito alterada durante o uso. Por isso achei necessário buscar do webservice, para obter sempre a lista atualizada.

1 curtida

Qual a forma padrão de popular essa lista com valores já conhecidos,usando strings com código sql dentro do programa? Ou já da pra importar um db do sqlite pronto? To numa dead end parecida

Naaando. Não entendi…

Você quer popular a ListView com valores do SqlIte?

No meu caso, o app envia uma solicitação ao webservice, que devolve um JSON com os estados.

Estou pegando este JSON e tentando colocar em um Spinner.

Basicamente isso…

Não, eu queria saber mesmo como os valores serão inseridos no sqlite, a forma mais simples que consigo pensar é criar eles quando é criada a tabela, dai seriam inseridos os valores na tabela após a criação, seria isso? Vocês costumam colocar o código do sql nos resources(strings.xml) e referenciam no código ou inserem direto? As vezes eu faço alguma coisa e ela funciona, ainda sim me sinto mal por ela não ser feita de um modo padrão, da aquele feeling de gambiarra.

Você ta usando algum framework pra isso? (Volley, RetroFit,etc)
Eu to fazendo um projeto em que uso o Volley, ele tem suporte a JsonArray e JsonObj, dai é só baixar o json, dito isso você pode usar as funções json.getString(), json.getBoolean e etc.
Vou no meu usercase fica assim

E converto isso num model assim

Deu pra entender? Ele é tipo um key-value, não sei se tem como fazer um comma separated value(csv) com json.

PS: Armazeno meu json no dropbox pois é foi o unico lugar que consegui armazenar um json e poder editar ele sem trocar o link. Esse meu json serve pra fazer algo parecido com um app-lock, se eu quiser fazer o aplicativo parar de funcionar é só eu setar o online pra False.