android - 如何检查移动数据和WIFI是否已连接?
问题描述
我有这个代码:
ConnectivityManager connMgr = (ConnectivityManager)
context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfoWifi =
connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
NetworkInfo networkInfoMobileData =
connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
然后在我的 Android 网络设置中,移动数据和 WiFi 都已启用。以下检查是
networkInfoWifi.isConnected(); // results to TRUE
networkInfoMobileData.isConnected(); // results to FALSE
我的应用程序在 Android Lollipop 上运行。我希望上面的两个检查都应该返回 TRUE。为什么会这样?我需要它们都是真实的。我应该怎么办?
解决方案
我从来没有找到一种方法来使networkInfoWifi.isConnected()
和
networkInfoMobileData.isConnected()
返回两者都为真。这可能是因为Android一次只能连接一个接口。
此界面选择也是由 Android 自动启动 Lollipop 设备完成的。Wi-Fi无法上网时Android Lollipop默认使用Mobile Data?
推荐阅读
- react-native - 使用 StyleSheet 组件时 React Native 出错
- python - 使用 Selenium Webdriver 保存多个屏幕截图
- tensorflow - Tensorflow 的 tf.keras.layers.Dense 和 PyTorch 的 torch.nn.Linear 的区别?
- c++ - C++程序计算5到15之间偶数的阶乘
- r - R autoplot 在逐行运行时有效,但在 source-ing R 脚本时无效
- python - xlsxwriter 的 For 循环迭代问题
- css - css网格段落溢出
- python - np.insert() 到一个空的 ndarray
- r - 使用带有 if 选项的 R 函数时优化运行时间
- flutter - TabBar中的Flutter Tab背景颜色(多色标签栏)