2017-03-27 7 views
0

私のアプリケーションはIonic V1で構築されています。インターネット接続を検出するためのNetwork infoプラグインが追加されています。 https://github.com/apache/cordova-plugin-network-informationIonicの遅いネットワークの検出

ただし、問題は、低速ネットワークの場合に対応していないことです。それを検出する方法はありますか?

私はWebSocketを使用しています(私は推測します)ので、$ httpを使ってタイムアウトを実行することはできません($ httpコールをいくつか実行しても)。

すべての入力をいただければ幸いです。

答えて

1

Cordova pluginを使用すると、デバイスが使用している接続のタイプを測定し、それに基づいてアクションを実行できます。それは

2Gデータ伝送容量以下の速度を表します

states[Connection.UNKNOWN] = 'Unknown connection'; 
states[Connection.ETHERNET] = 'Ethernet connection'; 
states[Connection.WIFI]  = 'WiFi connection'; 
states[Connection.CELL_2G] = 'Cell 2G connection'; 
states[Connection.CELL_3G] = 'Cell 3G connection'; 
states[Connection.CELL_4G] = 'Cell 4G connection'; 
states[Connection.CELL]  = 'Cell generic connection'; 
states[Connection.NONE]  = 'No network connection'; 

たとえば、あなたがCELL_2Gを選択した場合:汎用パケット無線サービス (GPRS)では、50キロビットの理論上の最大転送速度があります/ s(40 実際にはkbit/s)。 EDGE(GSM Evolutionの拡張データ転送速度)では、理論上の最大転送速度は1Mbit/s (実際には500kbit/s)です。

+0

しかし、彼がWi-Fiに接続しているのに速度が遅い場合はどうなりますか? –

+0

一般的な古いJSを使用して測定http://stackoverflow.com/a/5529841/1783311 – 0x1ad2

+0

低速Wi-Fiの他のソリューションはありますか?インターネット接続が遅いためにWebサービスの応答が非常に遅くなり、データが正しく読み込まれません。 –