我正在尝试使用此代码检测模拟器的互联网连接
if (
NetworkManager.networkManager.isConnected(NetworkType.WIFI) ||
NetworkManager.networkManager.isConnected(NetworkType.CELLULAR)
) {
//we have connection!!
doSomething();
} else {
//no connection =(
showError();
}
但是,这总是返回false。似乎模拟器使用了另一种不是由NetworkType常量标识的网络。我认为这是因为VMWare通过黑魔法实现了连接。
所以我不确定我是否应该坚持使用此代码并希望它能够在使用WiFi或蜂窝网络的真实设备中运行,或者应该找到我需要的其他方法。
我也试过这样做(不传递任何参数)
NetworkManager.networkManager.isConnected()
但是,即使我的电脑上有互联网连接,它也总是会返回true。我认为VMWare再次拖累我。
那么,关于如何在真实设备中获得更好结果的任何建议?
答案 0 :(得分:0)
好吧,只是为了更新。我终于得到了一个BBZ10,并有机会尝试这个代码。看起来
NetworkManager.networkManager.isConnected(NetworkType.WIFI)
和
NetworkManager.networkManager.isConnected(NetworkType.CELLULAR)
即使模拟器无法真正模仿他们的功能,它也会以预期的方式工作。
所以,如果你真的需要这个功能,请继续尝试这个,它一旦部署就会真的有效。