我有一些这样的代码:
public class NetworkHelper {
private static NetworkInfo mNetworkInfo;
public NetworkHelper(Context context) {
mNetworkInfo = ((ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();
}
private boolean isConnectedWifi(){
return (mNetworkInfo != null && mNetworkInfo.isConnected() && mNetworkInfo.getType() == ConnectivityManager.TYPE_WIFI);
}
}
问题是,当设备的连接类型发生变化时,例如从 WiFi 网络切换到移动网络,静态引用 mNetworkInfo 是否仍然有效?我应该再次运行 getActiveNetworkInfo() 以获得“有效”值吗?