2013-11-15 4 views
0

У меня есть класс, ответственный за отправку JSON на сервер, этот класс расширяет AsyncTask. Но я не могу обрабатывать ошибки соединения. Если устройство не подключено к интернет-приложению, оно прекращается, и если приложение находится в режиме полета, оно также прекращается. как справиться с этими ошибками?Обработка ошибок в HTTP-соединении android

ответ

0

Просто добавьте эту методу:

public boolean isOnline() { 
     ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
     NetworkInfo netInfo = cm.getActiveNetworkInfo(); 

     if (netInfo != null && netInfo.isConnectedOrConnecting() 
       && cm.getActiveNetworkInfo().isAvailable() 
       && cm.getActiveNetworkInfo().isConnected()) { 
      return true; 
     } 
     return false; 
    } 

вызова этого, прежде чем начать AsyncTask для данных потянут. Это проверит, подключено ли устройство к Интернету. Также не забудьте добавить свои права на ваш манифест:

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
+0

Отличный этот код. поможет мне с моей проблемой. Большое спасибо – user2793412

+0

Рад, что это помогает. :) – KaHeL

Смежные вопросы