在我的应用程序中,我只需要知道设备是否连接到wifi网络。我认为这个功能在模拟器上有效,但在实际设备上无效。
public static boolean wifiInternet(Context c)
{
try
{
ConnectivityManager connectivityManager = (ConnectivityManager)c.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ni = connectivityManager.getActiveNetworkInfo(); // CRASHES HERE
String name = ni.getTypeName();
if(name.equals("WIFI"))
return true;
else
return false;
}
catch(Exception e)
{
return false;
}
}
我在这里使用哪个上下文?getAplicationContext()或getBaseContext(),或者我只是放这个(我从服务调用函数)。