Привет, мне нужно отобразить сообщение «Данные не получены» при подключении или прочитать тайм-аут.
Я реализую это с помощью java.net.SocketTimeoutException, но не могу получить сообщение, если нет данных, полученных при подключении к Интернету.
Я получаю помощь только через интернет, подключенный или нет.
Но на самом деле я хочу получить его, когда интернет подключен.
Код проверки подключения к Интернету
public static boolean isNetworkConnected(Activity activity) {
ConnectivityManager connectivity = (ConnectivityManager) activity.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null) {
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
for (int i = 0; i < info.length; i++)
if (info[i].getState() == NetworkInfo.State.CONNECTED) {
return true;
}
}
return false;
}
Код
@Override
protected String doInBackground(String... params) {
// TODO Auto-generated method stub
String result = "";
try {
URL url = new URL(params[0]);
httpConnection = (HttpURLConnection) url.openConnection();
httpConnection.setRequestProperty("Accept", "application/json");
httpConnection.setReadTimeout(10000);
httpConnection.setConnectTimeout(15000);
httpConnection.setRequestMethod("POST");
httpConnection.setDoInput(true);
httpConnection.setDoOutput(true);
OutputStream os = httpConnection.getOutputStream();
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(os, "UTF-8"));
writer.write(String.valueOf(values));
writer.flush();
writer.close();
os.close();
int responseCode = httpConnection.getResponseCode();
if (responseCode == HttpURLConnection.HTTP_OK) {
InputStream iStream = httpConnection.getInputStream();
InputStreamReader isReader = new InputStreamReader(iStream);
BufferedReader br = new BufferedReader(isReader);
String line;
while ((line = br.readLine()) != null) {
result += line;
}
}
} catch (java.net.SocketTimeoutException e) {
Toast.makeText(context, "Network Error : No Data Received.", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
Log.e("Error : ", e.toString());
}
return result;
}
UnknownHostException
означает, что URL-адрес, который вы передаете, неверен. Попробуйте загрузить этот URL в свой браузер. @Рушви - person Janki Gadhiya   schedule 19.04.2016