標籤:android isnetworkavailable
在Android編程中不少有許多應用需要判斷是否有網路的問題,現在我就來說說關於網路的問題吧,源碼如下:.java /** * 檢查當前網路是否可用 * * @param context * @return */ public boolean isNetworkAvailable(Activity activity) { Context context = activity.getApplicationContext(); // 擷取手機所有串連管理對象(包括對wi-fi,net等串連的管理) ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); if (connectivityManager == null) { return false; } else { // 擷取NetworkInfo對象 NetworkInfo[] networkInfo = connectivityManager.getAllNetworkInfo(); if (networkInfo != null && networkInfo.length > 0) { for (int i = 0; i < networkInfo.length; i++) { System.out.println(i + "===狀態===" + networkInfo[i].getState()); System.out.println(i + "===類型===" + networkInfo[i].getTypeName()); // 判斷當前網路狀態是否為串連狀態 if (networkInfo[i].getState() == NetworkInfo.State.CONNECTED) { return true; } } } } return false; }
在oncreate()方法中判斷這個方法,具體代碼如下:.java@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);if(isNetworkAvailable(Maintivity.this){ Toast.makeText(this, "當前有可用網路!", Toast.LENGTH_LONG).show(); }else{ Toast.makeText(this,"當前沒有網路!",Toast.LENGTH_LONG).show();} } 另外,還需要添加許可權 <!-- 允許應用可以連網 --> <uses-permission android:name="android.permission.INTERNET" /> <!--允許應用檢查網路狀況 --> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
本文出自 “Android網路” 部落格,請務必保留此出處http://3127279300.blog.51cto.com/10023287/1725343
Android 關於判斷應用是否有網路