2013-03-17 41 views
0

由於Java中的新手,我無法鏈接這兩個代碼片段:以用戶設置,如果沒有互聯網連接

如果沒有互聯網連接:

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

然後,彈出一個對話框包含通知和設置/取消按鈕。

 public void showNoConnectionDialog(Context ctx1) { 
     final Context ctx = ctx1; 
     AlertDialog.Builder builder = new AlertDialog.Builder(ctx); 
     builder.setCancelable(true); 
     builder.setMessage(R.string.no_connection); 
     builder.setTitle(R.string.no_connection_title); 
     builder.setPositiveButton(R.string.settings, new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int which) { 
       ctx.startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS)); 
      } 
     }); 
     builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int which) { 
       return; 
      } 
     }); 
     builder.setOnCancelListener(new DialogInterface.OnCancelListener() { 
      public void onCancel(DialogInterface dialog) { 
       return; 
      } 
     }); 

     builder.show(); 
    } 

任何人都可以給一些方向。

+1

如果isOnline()方法返回false,就調用'showNoConnectionDialog()'方法!你試過這個嗎? – 2013-03-17 15:01:32

回答

2

像這樣使用。

if(!isOnline()) { 
    showNoConnectionDialog(MainActivity.this); 
} 
+0

無法把它放在正確的位置https://gist.github.com/anonymous/5181986 – Chirag 2013-03-17 15:21:44

+0

@Chirag把這個代碼放在任何你正在做網絡操作的地方。 – 2013-03-17 15:26:41

+0

我在onCreate中加載url ...就像上面的要點一樣。不在那裏工作。 – Chirag 2013-03-17 15:48:24

相關問題