Httpget Null Error

Я пытаюсь получить данные JSON .php

  class RequestTask2 extends AsyncTask<String, String, String>{

@Override
protected String doInBackground(String... uri) {
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response;
String responseString = null;

try {

response = httpclient.execute(new HttpGet(uri[0]));
StatusLine statusLine = response.getStatusLine();
if(statusLine.getStatusCode() == HttpStatus.SC_OK){
ByteArrayOutputStream out = new ByteArrayOutputStream();
response.getEntity().writeTo(out);
responseString = out.toString();
out.close();
} else{
//Closes the connection.


response.getEntity().getContent().close();
}
} catch (ClientProtocolException e) {
//TODO Handle problems..

} catch (IOException e) {
//TODO Handle problems..

}
return responseString;
}

@Override
protected void onPostExecute(String result) {
super.onPostExecute(result);

if(result.equals(null)){

}else{
Title=result;}
}
}

new RequestTask2().execute("http://www.****.com/test/***.php"); (With handler)

Это работает очень хорошо, когда есть активный интернет. Но мне не нужен метод интернет-проверки. Я уже сделал это, и ошибка, где, Возвращается ноль, когда нет интернета во время выполнения асинхронной задачи.

Пожалуйста, помогите мне, как проверить NULL или остановить задачу, когда нет интернета. Ошибка вызвала принудительное закрытие приложения. Спасибо за интересную мою проблему. И надеюсь, что это скоро будет решено.

0

Решение

Если интернет равен нулю, ваш метод doinbackground возвращает ноль.
И в вашем методе onPostExecute «результат» является нулевым.

этот код генерирует исключение nullPointerException, потому что вы пытаетесь получить доступ к нулевому объекту.

if(result.equals(null)) {
...
}

заменить его на

if(result != null) {
Title=result;
}

Если вы хотите отменить свою задачу, вы можете вызвать метод cancel (true) для вашего метода doInBackground (или там, где вы хотите), и метод «onPostExecute» не будет вызываться.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector