gpt4 book ai didi

android - ConnectivityManager getActiveNetworkInfo() 始终为空,即使数据流量处于 Activity 状态也是如此

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:07:25 28 4
gpt4 key购买 nike

我正在开发一个 Android 项目,我需要检查互联网连接。我在网上搜索并在 stackoverflow 上找到了解决方案。但是,我在检查互联网状态时遇到问题。我已经到处搜索,但找不到解决我的问题的方法。

这是 list :

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />

这是检查互联网是否连接的代码:

cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
if (cm != null) {
NetworkInfo ni = cm.getActiveNetworkInfo();
isConnected = (ni != null && ni.isAvailable() && ni.isConnected()) ? true : false;
}

问题是,即使 TYPE_MOBILE 数据流量处于 Activity 状态,ni 变量也始终为空。访问运营商的互联网流量是正确的测试方法吗?或者我必须使用 TelephonyManager?这很奇怪,因为我使用了 getNetworkInfo()[] 并对其进行了调试,TYPE_MOBILE 的 HSPA 出现在那里,但 isAvalaible 始终为 false 并且 getState() = DISCONNECTED。但是我启用了运营商的数据流量并正常工作(在其他应用程序中)

[编辑]:顺便说一句,我是直接在设备而不是模拟器中测试它的:)。

提前致谢。问候。

最佳答案

关于android - ConnectivityManager getActiveNetworkInfo() 始终为空,即使数据流量处于 Activity 状态也是如此,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6098639/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com