【问题标题】:Android how to get wifi signal strength and connection subTypeAndroid如何获取wifi信号强度和连接子类型
【发布时间】:2011-08-09 11:00:21
【问题描述】:

我正在通过调用此函数检查网络类型

        ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo Info = cm.getActiveNetworkInfo();
        if (Info == null || !Info.isConnectedOrConnecting()) {
            Log.i(TAG, "No connection");
        } else {
            int netType = Info.getType();
            int netSubtype = Info.getSubtype();

            if (netType == ConnectivityManager.TYPE_WIFI) {
                Log.i(TAG, "Wifi connection");
                //Need to get wifi strength
            } else if (netType == ConnectivityManager.TYPE_MOBILE) {
              Log.i(TAG, "GPRS/3G connection"); 
               //Need to get differentiate between 3G/GPRS
            } 
        }

我不想定期轮询 wifi 强度,但是当我做一些网络工作时,我需要检查我无法获得的连接的 wifi 强度。 其次,当我将 netType() 设为 MOBILE 时,如何确定其 3G/GPRS 形式的 netSubType,我的意思是 3g/Gprs 等的整数值是多少。

请任何人知道如何做到这一点。

谢谢

【问题讨论】:

    标签: android


    【解决方案1】:
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
            NetworkInfo Info = cm.getActiveNetworkInfo();
            if (Info == null || !Info.isConnectedOrConnecting()) {
                Log.i(TAG, "No connection");
            } else {
                int netType = Info.getType();
                int netSubtype = Info.getSubtype();
    
                if (netType == ConnectivityManager.TYPE_WIFI) {
                    Log.i(TAG, "Wifi connection");
                 wifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE);
                     int linkSpeed = wifiManager.getConnectionInfo().getLinkSpeed();
                //Need to get wifi strength
            } else if (netType == ConnectivityManager.TYPE_MOBILE) {
              Log.i(TAG, "GPRS/3G connection"); 
               //Need to get differentiate between 3G/GPRS
            } 
        }
    

    【讨论】:

    • 感谢您的回答以及如何区分 3G/GPRS 连接类型。
    • 链接速度不衡量信号强度。 RSSI 确实如此。
    猜你喜欢
    • 2013-09-20
    • 2012-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-26
    • 1970-01-01
    相关资源
    最近更新 更多