ورود

View Full Version : قطع یا وصل بودن اینترنت



sh.mahdavi
سه شنبه 05 مرداد 1395, 19:51 عصر
سلام با کدهای زیر که داخل یکی از کلیدهای خود سایتم هست میشه فهمید اینترنت گوشی وصل هست


ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ni = cm.getActiveNetworkInfo();


حالا اگه اینترنت قطع بشه یا حجمش تموم بشه ارتباط با سرور قطع میشه!
چطوری میشه فهمید این ارتباط قطعه؟
با استفاده کدها زیر اطلاعاتم از سرور میگیرم اما اگه نت قطع باشه بعد از گذشت یه زمانی برنامه کرش میشه!
لطفا کمک!



public class getpost extends AsyncTask{

@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();

pr=ProgressDialog.show(Register.this, "لطفا صبر کنید ...", " ...");


}

@Override
protected Object doInBackground(Object... arg0) {
// TODO Auto-generated method stub


try{

// URL link=new URL("http://192.168.4.1/travel/login.php");

String data=URLEncoder.encode("user","utf8")+"="+URLEncoder.encode(user+"","utf8");
data+="&"+URLEncoder.encode("pass","utf8")+"="+URLEncoder.encode(pass+"","utf8");

URL link=new URL("http://192.168.4.1/travel/login.php");
URLConnection connect=link.openConnection();


//send data
connect.setDoOutput(true);
OutputStreamWriter wr=new OutputStreamWriter(connect.getOutputStream());
wr.write(data);
wr.flush();

//send data


BufferedReader reader=new BufferedReader(new InputStreamReader(connect.getInputStream()));

StringBuilder sb=new StringBuilder();

String line=null;

while((line=reader.readLine())!= null){

sb.append(line);
}
}catch(Exception e){

res=e.toString();
finish();

}

return "";
}


@Override
protected void onPostExecute(Object result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
}

Amin-rz
سه شنبه 05 مرداد 1395, 22:27 عصر
private class NetCheck extends AsyncTask<String,String,Boolean>
{
private ProgressDialog nDialog;

@Override
protected void onPreExecute(){
super.onPreExecute();

}
/**
* Gets current device state and checks for working internet connection by trying Google.
**/
@Override
protected Boolean doInBackground(String... args){

ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnected()) {
try {
URL url = new URL("http://www.google.com");
HttpURLConnection urlc = (HttpURLConnection) url.openConnection();
urlc.setConnectTimeout(3000);
urlc.connect();
if (urlc.getResponseCode() == 200) {
return true;
}
} catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return false;

}
@Override
protected void onPostExecute(Boolean th){

if(th == true){

Toast.makeText(getApplicationContext(), "اتصال اینترنت برقرار است", Toast.LENGTH_SHORT).show();

}
else{

Toast.makeText(getApplicationContext(), "اتصال اینترنت برقرار نیست", Toast.LENGTH_SHORT).show();
}
}
}

sh.mahdavi
چهارشنبه 06 مرداد 1395, 09:25 صبح
دست گلت درد نکنه:تشویق: