2012-11-30 59 views
-1

我想添加一項功能,當用戶點擊一個按鈕,將您帶到網站時,它應該通知您當前沒有連接或沒有可用的網絡連接。目前我有這個代碼,但它似乎只是直接帶我到網站(離線無法連接),但沒有顯示任何信息?活動啓動前檢查網絡狀態

這裏是我的代碼:

next7.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View view) { 
     Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com")); 
     startActivity(browserIntent); 

    } 
    }); 
} 
public void checkNetworkStatus(){ 

    final ConnectivityManager connMgr = (ConnectivityManager) 
    this.getSystemService(Context.CONNECTIVITY_SERVICE); 

    final android.net.NetworkInfo wifi = 
    connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI); 

    final android.net.NetworkInfo mobile = 
    connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); 

    if(wifi.isAvailable()){ 

    Toast.makeText(this, "Wifi" , Toast.LENGTH_LONG).show(); 
    } 
    else if(mobile.isAvailable()){ 

    Toast.makeText(this, "Mobile 3G " , Toast.LENGTH_LONG).show(); 
    } 
    else 
    { 

     Toast.makeText(this, "No Network " , Toast.LENGTH_LONG).show(); 
    } 

} 

任何幫助將不勝感激。謝謝。

回答

2

使它像這樣

public boolean checkNetworkStatus() { 
    boolean isConected = false; 
    final ConnectivityManager connMgr = (ConnectivityManager) this 
      .getSystemService(Context.CONNECTIVITY_SERVICE); 

    final android.net.NetworkInfo wifi = connMgr 
      .getNetworkInfo(ConnectivityManager.TYPE_WIFI); 

    final android.net.NetworkInfo mobile = connMgr 
      .getNetworkInfo(ConnectivityManager.TYPE_MOBILE); 

    if (wifi.isAvailable()) { 
     isConected = true; 
     Toast.makeText(this, "Wifi", Toast.LENGTH_LONG).show(); 
    } else if (mobile.isAvailable()) { 
     isConected = true; 
     Toast.makeText(this, "Mobile 3G ", Toast.LENGTH_LONG).show(); 
    } else { 

     Toast.makeText(this, "No Network ", Toast.LENGTH_LONG).show(); 
    } 
    return isConected; 
} 

if(checkNetworkStatus()) 
    { 
     Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com")); 
     startActivity(browserIntent); 
    } 
    else{ 
     //No internet 
    } 
相關問題