我正在寻找一段代码来检查 Android 设备的网络连接,包括网络共享,而不仅仅是无线通道。
我在网上花了几个小时寻找这样的东西,但没有任何结果!我发现的所有功能都只管理无线网络测试。与网络共享无关。那么至少有可能吗?你有一些对应的吗?
我正在寻找一段代码来检查 Android 设备的网络连接,包括网络共享,而不仅仅是无线通道。
我在网上花了几个小时寻找这样的东西,但没有任何结果!我发现的所有功能都只管理无线网络测试。与网络共享无关。那么至少有可能吗?你有一些对应的吗?
这将检查是否启用了 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
看一下这个:
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" />