2012-08-16 113 views

回答

3

你应该当连接状态发生了变化

public class InternetConnectionChangeReceiver extends BroadcastReceiver 
    { 
      public void onReceive(Context context, Intent intent) { 
       boolean noConnectivity = intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false); 
       String reason = intent.getStringExtra(ConnectivityManager.EXTRA_REASON); 
       boolean isFailover = intent.getBooleanExtra(ConnectivityManager.EXTRA_IS_FAILOVER, false); 

       NetworkInfo currentNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO); 
       NetworkInfo otherNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO); 

       if(currentNetworkInfo.isConnected()){ 
        Toast.makeText(getApplicationContext(), "Connected", Toast.LENGTH_LONG).show(); 
       }else{ 
        Toast.makeText(getApplicationContext(), "Not Connected", Toast.LENGTH_LONG).show(); 
       } 
      } 
     } 

下面添加允许在你的清单文件时被触发的广播接收器。

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

将您的广播接收器注册到清单文件中。

<receiver android:name="InternetConnectionChangeReceiver"> 
      <intent-filter> 
       <action android:name="android.net.conn.CONNECTIVITY_CHANGE"/> 
      </intent-filter> 
     </receiver> 
+0

谢谢你的快速反应生病尝试这个。 – diordna 2012-08-16 08:03:52