2014-08-27 2 views
0

인터넷 (데이터)을 켜면 dialog.dismiss(); 잘 작동하고 대화 상자가 사라집니다. 하지만 인터넷 대화 상자가 꺼지지 않으면 꺼집니다 .i는 1 분 이상 기다렸습니다. 이것은 백그라운드 스레드입니다. 인터넷을 확인할 필요가 없습니다. 그냥 timeout하고 dialog.dismiss()를 실행할 필요가있다; 연결 작업 완료 또는 시간 초과 후. 내 코드는android 인터넷 연결 시간 제한이 작동하지 않습니다.

connection = (HttpURLConnection) (new URL("http://anything.com/a/?enask="+textsearched)).openConnection(); 
connection.setRequestMethod("GET"); 
connection.setConnectTimeout(5000); 
connection.setReadTimeout(10000); 
connection.setRequestProperty("Connection", "Keep-Alive"); 
    connection.setDoInput(true); 
connection.setDoOutput(true); 
connection.connect(); 
InputStream is = null; 
is = connection.getInputStream(); 
dialog.dismiss(); 
+0

당신이 비동기 작업에해서 ProgressDialog를 표시하는, 그렇지 않으면 기각 ?? – goonerDroid

+0

예 비동기 작업 progressdialog html 데이터가 사라집니다. 하지만 인터넷을 사용할 수 없을 때 진행 표시는 사라지지 않습니다. –

+0

그래서 intynnt 조건을 asynctask pre 실행 메소드에 추가하십시오. 인터넷을 사용할 수 없다면 dialog.dismiss(); – goonerDroid

답변

0

입니다. 먼저 온라인 상태인지 확인할 수 있습니다.

public boolean isOnline() 
     { 
     ConnectivityManager cm =(ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE); 
     NetworkInfo netInfo = cm.getActiveNetworkInfo(); 
     if (netInfo != null && netInfo.isConnectedOrConnecting()) 
      {return true;} 
     return false; 
     } 

그리고

+0

선생님, dialog.dismiss()를 실행하는 방법을 알려 주실 수 있습니까? 적어도 15 초 후에 html 데이터가 생성되거나 시간 초과됩니다. –