2012-10-10 4 views
0

웹/모바일 액세스를 확인하는 shouldOverrideUrlLoading() 내에 if 문을 넣을 수있는 방법이 있습니까? 그런 다음 모바일 크롬이 표시하는 불쾌한 페이지를 찾을 수 없음 페이지 대신 오류 메시지를 표시합니다.shouldOverrideUrlLoading when fire 웹/모바일 액세스 확인

public boolean shouldOverrideUrlLoading(WebView view, String url) 
{   
    if(isOnline() == false) 
     { 
     AlertDialog.Builder dlgAlert = new AlertDialog.Builder(this); 
     dlgAlert.setMessage("Mobile device currnetly has no internet access. Please try again."); 
     dlgAlert.setTitle("No Connection"); 
     dlgAlert.setPositiveButton("OK", null); 
     dlgAlert.setCancelable(true); 
     dlgAlert.setIcon(R.drawable.ic_launcher); 
     dlgAlert.create().show(); 
     } 

     return false;   
} 
+1

- 네트워크 상태를 확인하는 방법이라고 isOnline이 가정. if 문에서 true를 반환한다. – toadzky

답변

0

확인 유사

뭔가 내 문제에 대한 해결책을 발견했다. 우선 새로운 WevViewclient에 shouldOverrideUrlLoading()을 추가합니다. 전에 그 블록 밖에 있었어.

다음은 내가 대신에 AlertDialog 빌더의 토스트 메시지를 사용하여, 나는이에 코드를 변경

AlertDialog.Builder dlgAlert = new AlertDialog.Builder(this); 

다음에 대한 오류 메시지가 표시되었다.

@Override 공공 부울 shouldOverrideUrlLoading (웹보기보기, 문자열 URL) 작업을해야 {

   if (isOnline() == false) 
      { 
       Toast msg = Toast.makeText(MainActivity.this,"No mobile or web access, try again later.",Toast.LENGTH_LONG); 
       msg.show(); 
       return true; 
      } 
      else 
      { 
       return false; 
      } 
     }