Android网络状态相关

    在开发过程中,特别是开发和网络相关的一些应用,很可能会用到网络链接状态,包括GPRS、WIFI等等,总结了一下,其实这些问题很简单,Android提供了两个类,一个是ConnectivityManager,一个是NetworkInfo。

    比方说下面这个例子就是判断当前网络GPRS和WIFI的状态

 

  1. import android.content.Context;
  2. import android.net.ConnectivityManager;
  3. import android.net.NetworkInfo;
  4. public class Test extends Activity { 
  5.     private ConnectivityManager cm;
  6.     private NetworkInfo info;
  7. /** Called when the activity is first created. */
  8. public void onCreate(Bundle savedInstanceState) {
  9.     super.onCreate(savedInstanceState);
  10.     setContentView(R.layout.main);
  11.     cm = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
  12.  
  13.     if (cm.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTED)
  14.     {
  15.         text.setText("WIFI已经连接"); 
  16.     }
  17.     else {
  18.         text.setText("WIFI未连接");
  19.     }
  20.     if (cm.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTED) 
  21.     {
  22.         text.setText("GPRS已经连接"); 
  23.     }
  24.     else {
  25.         text.setText("GPRS未连接");
  26.     }
  27. }
  28. }

注:需要在AndroidManifest.xml中添加权限<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

 

其他功能大家可以去阅读这两个类,相信很多问题都能迎刃而解了

你可能感兴趣的:(android,网络,service,Class,import,NetWork)