このコードを使用してシミュレータのインターネット接続を検出しようとしています
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()
ただし、PCにインターネット接続があるかどうかに関係なく、常にtrueが返されます。VMWareが再び私を荒らしていると思います。
それで、実際のデバイスでより良い結果を得るためにこれをどのように行うべきかについてのアドバイスはありますか?