zoukankan      html  css  js  c++  java
  • android判断网络连接状态、联网类型、运营商

    /**
         * 获取上网方式
         * 
         * @param mContext
         * @return
         */
        public static String getNetType(Context mContext) {
    
            String netType = "";
            ConnectivityManager connectionManager = (ConnectivityManager) mContext
                    .getSystemService(Context.CONNECTIVITY_SERVICE);
            NetworkInfo info = connectionManager.getActiveNetworkInfo();
            if (null != info && info.isAvailable()) {
                netType = info.getTypeName();
            }
            return netType;
        }
    
        /**
         * 判断网络连接是否可用
         * 
         * @param mContext
         * @return 
         */
    
        public static boolean getNetIsVali(Context mContext) {
    
            if (mContext != null) {
                ConnectivityManager mConnectivityManager = (ConnectivityManager) mContext
                        .getSystemService(Context.CONNECTIVITY_SERVICE);
                NetworkInfo mNetworkInfo = mConnectivityManager
                        .getActiveNetworkInfo();
                if (mNetworkInfo != null) {
                    return mNetworkInfo.isAvailable();
                }
            }
            return false;
        }
    
        /**
         * 获取运营商信息
         * 
         * @param mContext
         * @return
         */
        public static String getNetExtraInfo(Context mContext) {
    
            String netExtraInfo = "";
            TelephonyManager mTm = (TelephonyManager) mContext
                    .getSystemService(Context.TELEPHONY_SERVICE);
            if (mTm.getSimState() == TelephonyManager.SIM_STATE_READY) {
                netExtraInfo = mTm.getSimOperator();
                if (null != netExtraInfo) {
                    if (netExtraInfo.equals("46000")
                            || netExtraInfo.equals("46002")
                            || netExtraInfo.equals("46007")) {
                        // 中国移动
                        netExtraInfo = "中国移动";
                    } else if (netExtraInfo.equals("46001")) {
    
                        // 中国联通
                        netExtraInfo = "中国联通";
                    } else if (netExtraInfo.equals("46003")) {
    
                        // 中国电信
                        netExtraInfo = "中国电信";
                    } else {
                        netExtraInfo = "其他";
                    }
                }
            }
            return netExtraInfo;
        }

    1.只考虑1卡

    2.别忘了加网络权限

  • 相关阅读:
    HL7及PIX相关的测试工具
    HDU4570----Multi-bit Trie----简单的DP
    hdu2248
    poj 3693 Maximum repetition substring (后缀数组)
    高性能通道
    volyaire重振Infiniband
    利用iWARP/RDMA解决以太网高延迟
    linux 单网卡来绑定多IP实现多网段访问以及多网卡绑定单IP实现负载均衡
    C细节学习
    每2秒获取系统的赋值及内存使用率
  • 原文地址:https://www.cnblogs.com/xirtam/p/3967163.html
Copyright © 2011-2022 走看看