在android的開發中,尤其是與訪問網路有關的開發,都要判斷一下手機是否串連上了網路,下面是一個判斷是否串連網路的嗲嗎片段:
[java]
view plaincopyprint?
- 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;
- }
- }
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;}}
這個代碼用到的地方很多,直接添加到自己的項目中就可以使用。