Android全面的网络工具方法

package com.test;


import android.content.Context;

import android.location.LocationManager;

import android.net.ConnectivityManager;

import android.net.NetworkInfo;

import android.telephony.TelephonyManager;


import java.util.List;


/**

 * 网络工具

 */

public class NetStatusUnit {


    /**

     * 网络是否可用

     */

    public static boolean isNetWorkEnable(Context cxt) {

        ConnectivityManager connectivity = (ConnectivityManager) cxt

                .getSystemService(Context.CONNECTIVITY_SERVICE);

        if (connectivity == null) {

        } else {

            NetworkInfo[] info = connectivity.getAllNetworkInfo();

            if (info != null) {

                for (int i = 0; i < info.length; i++) {

                    if (info[i].getState() == NetworkInfo.State.CONNECTED) {

                        return true;

                    }

                }

            }

        }

        return false;

    }



    /**

     * GPS是否开启

     */

    public static boolean isGPSEnabled(Context cxt) {

        LocationManager locationManager = ((LocationManager) cxt

                .getSystemService(Context.LOCATION_SERVICE));

        List<String> accessibleProviders = locationManager.getProviders(true);

        return accessibleProviders != null && accessibleProviders.size() > 0;

    }


    /**

     * wifi是否开启

     */

    public static boolean isWifiEnabled(Context context) {

        ConnectivityManager mgrConn = (ConnectivityManager) context

                .getSystemService(Context.CONNECTIVITY_SERVICE);

        TelephonyManager mgrTel = (TelephonyManager) context

                .getSystemService(Context.TELEPHONY_SERVICE);

        return ((mgrConn.getActiveNetworkInfo() != null && mgrConn

                .getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) || mgrTel

                .getNetworkType() == TelephonyManager.NETWORK_TYPE_UMTS);

    }


    /**

     * 判断当前网络类型:wifi网络

     */

    public static boolean isWifi(Context cxt) {

        ConnectivityManager connectivityManager = (ConnectivityManager) cxt

                .getSystemService(Context.CONNECTIVITY_SERVICE);

        NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();

        if (activeNetInfo != null

                && activeNetInfo.getType() == ConnectivityManager.TYPE_WIFI) {

            return true;

        }

        return false;

    }


    /**

     * 判断当前网络类型:3G网络

     */

    public static boolean is3G(Context cxt) {

        ConnectivityManager connectivityManager = (ConnectivityManager) cxt

                .getSystemService(Context.CONNECTIVITY_SERVICE);

        NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();

        if (activeNetInfo != null

                && activeNetInfo.getType() == ConnectivityManager.TYPE_MOBILE) {

            return true;

        }

        return false;

    }



    /**

     * 当前是:WIFI 或者 3G

     *@return "3G" "WIFI"

     * */

    public static String isNetWorkType(Context cxt){

        ConnectivityManager connectivityManager = (ConnectivityManager) cxt

                .getSystemService(Context.CONNECTIVITY_SERVICE);

        NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();

        if (activeNetInfo != null

                && activeNetInfo.getType() == ConnectivityManager.TYPE_MOBILE) {

            return "3G";

        }

        if (activeNetInfo != null

                && activeNetInfo.getType() == ConnectivityManager.TYPE_WIFI) {

            return "WIFI";

        }

        return "";

    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值