我是Android开发的新手,正在开发一款Android应用程序,需要通过Wifi,EDGE或3G将手机连接到互联网.
这是我用来检查互联网连接是否可用的代码
public static boolean isConnected()
{
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
return cm.getActiveNetworkInfo().isConnectedOrConnecting();
}
Run Code Online (Sandbox Code Playgroud)
我还在清单文件中设置了这些权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Run Code Online (Sandbox Code Playgroud)
当启用3G时,这在运行Android 1.5版的模拟器中工作正常,但是当我禁用3G连接时它会崩溃.当我调用isConnectedOrConnecting()时,我的应用程序抛出空指针异常.运行Android 2.1的HTC Desire也会发生同样的事情.
希望有人知道解决这个问题.
提前致谢!