0

我正在寻找一段代码来检查 Android 设备的网络连接,包括网络共享,而不仅仅是无线通道。

我在网上花了几个小时寻找这样的东西,但没有任何结果!我发现的所有功能都只管理无线网络测试。与网络共享无关。那么至少有可能吗?你有一些对应的吗?

4

2 回答 2

2

这将检查是否启用了 Tethering。从我更改为让 adbWireless 通过系留连接工作的类中剪切:

    // check if tethering is on
    try {
        Method[] wmMethods = mWifiManager.getClass().getDeclaredMethods();
        for(Method method: wmMethods)
            if("isWifiApEnabled".equals(method.getName()))
                return (Boolean) method.invoke(mWifiManager);
        return false;
    } catch (Exception x) {return false;}

你还需要 android.permission.ACCESS_WIFI_STATE

于 2013-01-28T08:34:25.500 回答
0

看一下这个:

    public static boolean isOnline(Context context) {
    boolean isOnline = false;
    try {
        final ConnectivityManager conMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        final NetworkInfo activeNetwork = conMgr.getActiveNetworkInfo();
        if(activeNetwork != null && activeNetwork.isConnected() && activeNetwork.isAvailable()) {
            isOnline = true;
        } else {
            isOnline = false;
        } 
    } catch(Exception e) {
        Log.e(Config.LOG_TAG, e.toString());
        isOnline = false;
    }
    return isOnline;
}

还将此类权限添加到 AndroidManifest.xml 中:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
于 2012-11-20T13:44:16.397 回答