Informações não são recebidas do webservice.

23/06/2016

0

Bom pessoal, estou trabalhando em um aplicativo e estou tentando recuperar algumas informações em json do meu servidor local ou de algum da internet, não ocorre nenhum erro mas os resultados não são exibidos também, segue meu código!

package com.marratecnologia.doctor;

import android.os.AsyncTask;
import android.util.Log;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.HttpURLConnection;
import java.net.URL;

/**
 * Created by Cleyton Caetano on 22/06/2016.
 */
public class Webservice extends AsyncTask<Void, Void, String> {

    private ConsultaListiner listiner;
    private static final String URL_STRING = "http://127.0.0.1/";

    public Webservice(ConsultaListiner listiner){
        this.listiner = listiner;
    }

    @Override
    protected String doInBackground(Void... voids) {

        try {
            String resultado = consultarServidor();

            return interpretaResultado(resultado);

        } catch (IOException e) {
            e.printStackTrace();
            return null;
        } catch (JSONException e) {
            e.printStackTrace();
            return null;
        }

    }

    private String interpretaResultado(String resultado) throws JSONException {

        JSONObject object = new JSONObject(resultado);

        JSONArray jsonArray = object.getJSONArray("primeiro");
        JSONObject jsonObjectResultado = jsonArray.getJSONObject(0);

        String nome = jsonObjectResultado.getString("nome");
        String sobrenome = jsonObjectResultado.getString("sobrenome");

        Log.d("Nome: ",""+nome);
        Log.d("Sobrenome: ",sobrenome);

        return nome+" "+sobrenome;
    }

    public String consultarServidor() throws IOException {

        InputStream is = null;

        try {

            URL url = new URL(URL_STRING);
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setReadTimeout(10000);
            conn.setConnectTimeout(15000);
            conn.setRequestMethod("GET");
            conn.setDoInput(true);
            conn.connect();
            conn.getResponseCode();

            is = conn.getInputStream();

            Reader reader = null;
            reader = new InputStreamReader(is);
            char[] buffer = new char[2048];
            reader.read(buffer);
            return new String(buffer);
        }finally {
            if (is!=null){
                is.close();
            }
        }
    }

    @Override
    public void onPostExecute(String result){

        listiner.onConsultaConcluida(result);

    }

    public interface ConsultaListiner {
        void onConsultaConcluida(String resultado);
    }
}




Agora o MainActivity

    protected void onCreate(Bundle savedInstanceState) {
        new Webservice(this).execute();  
    }
   

    @Override
    public void onConsultaConcluida(String resultado) {
        TextView text = (TextView) findViewById(R.id.hello_world);
        text.setText(resultado);
    }




Meu json

{"primeiro":{"nome":"Cleyton","sobrenome":"Caetano","email":"meuemail@gmail.com","idade":"20","cidade":"Imperatriz"}}




Só pra constar meu app já está com permissão para internet no manifests!
Cleyton Caetano

Cleyton Caetano

Responder

Posts

23/06/2016

Cleyton Caetano

Alguém pro aê?
Responder

24/06/2016

Weslei Patrick

Boa noite,

Qual o erro que retorna ??
Responder

24/06/2016

Cleyton Caetano

Boa noite,

Qual o erro que retorna ??


Boa noite Weslei Patrick, como já informei não retorna erro algum, quando a aplicação vai trocar o texto do TextView simplesmente fica vazio, como se não tivesse recebido nada do webservice.
Responder

24/06/2016

Jothaz

Com a informação que você postou fica praticamente impossível ajudá-lo, a não ser que a pessoa seja versada nas artes divinatórias.

O única caminho que vejo e debugar usando as Ferramentas do desenvolvedor, você consegue monitorar as transações e verificar o retorno no WebService ou erro que retornou e não foi capturado.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar