在android的開發中,尤其是與訪問網路有關的開發,都要判斷一下手機是否串連上了網路,下面是一個判斷是否串連網路的嗲嗎片段:
package cn.com.karl.util;import com.kubu.main.R;import android.app.Activity;import android.app.AlertDialog;import android.content.Context;import android.content.DialogInterface;import android.content.Intent;import android.net.ConnectivityManager;import android.net.NetworkInfo;import android.provider.Settings;import android.widget.TextView;public class IsInternet {/** * 判斷網路情況 * @param context 上下文 * @return false 表示沒有網路 true 表示有網路 */public static boolean isNetworkAvalible(Context context) {// 獲得網路狀態管理器ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);if (connectivityManager == null) {return false;} else {// 建立網路數組NetworkInfo[] net_info = connectivityManager.getAllNetworkInfo();if (net_info != null) {for (int i = 0; i < net_info.length; i++) {// 判斷獲得的網路狀態是否是處於串連狀態if (net_info[i].getState() == NetworkInfo.State.CONNECTED) {return true;}}}}return false;}// 如果沒有網路,則彈出網路設定對話方塊public static void checkNetwork(final Activity activity) {if (!IsInternet.isNetworkAvalible(activity)) {TextView msg = new TextView(activity);msg.setText("當前沒有可以使用的網路,請設定網路!");new AlertDialog.Builder(activity).setIcon(R.drawable.android).setTitle("網路狀態提示").setView(msg).setPositiveButton("確定",new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog,int whichButton) {// 跳轉到設定介面activity.startActivityForResult(new Intent(Settings.ACTION_WIRELESS_SETTINGS),0);}}).create().show();}return;}}