t.p*_*iro 8 null android connectivity android-2.1-eclair android-wireless
我正在研究一个Android项目,我需要检查互联网连接.我搜索了网络,我在stackoverflow上找到了解决方案.但是,我在检查互联网状态时遇到了问题.我已经到处搜索,但我找不到解决问题的方法.
这是清单:
<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" />
Run Code Online (Sandbox Code Playgroud)
以下是检查互联网是否已连接的代码:
cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
if (cm != null) {
NetworkInfo ni = cm.getActiveNetworkInfo();
isConnected = (ni != null && ni.isAvailable() && ni.isConnected()) ? true : false;
}
Run Code Online (Sandbox Code Playgroud)
问题是即使TYPE_MOBILE数据流量处于活动状态,ni变量也始终为空.要访问运营商互联网流量,这是正确的测试方式吗?或者我必须使用TelephonyManager?这很奇怪,因为我使用了getNetworkInfo()[]并对其进行了调试,TYPE_MOBILE的HSPA出现在那里,但isAvalaible总是false而getState()= DISCONNECTED.但是我启用了运营商的数据流量并且正在工作(在其他应用程序中)
[编辑]:顺便说一下我直接在设备中测试它而不是在模拟器中:).
提前致谢.问候.
有各种各样的错误ConnectivityManager.
例如,请参阅http://code.google.com/p/android/issues/detail?id=11866和http://code.google.com/p/android/issues/detail?id=11891.
| 归档时间: |
|
| 查看次数: |
9711 次 |
| 最近记录: |