デバイスがネットワーク上にあれば、ウェブページへのアクセスもアプリを開くのもスムーズで、いつでも欲しい情報を手に入れることができます。
アプリやウェブサイトをオフラインで使用するために、ローカルにデータを保存することがよくあります。
オンラインとオフラインの間には、「Lie-Fi」という状態があります。
この状況に対処する方法は確かにあります。
ヒント
Lie-Fiのテスト
お使いのデバイスがインターネットに接続しているにもかかわらず、インターネットに接続できないようにあなたを騙しています。このような場合、どのように検知しますか?また、どのようにユーザーに知らせますか?
ハイブリッドアプリを開発している場合は、 Offline.jsください。切断を検出するために、定期的にサーバーにpingを送信し、接続が機能しているかどうかを確認します。
短いタイムアウト時間の設定
サーバーにリクエストを送信するとき、10秒以上のタイムアウトを設定する必要はありません。通常、ユーザーは3秒間待ち、ページを離れる可能性があります。また、タイムアウトが発生した場合、ユーザーにとって意味のある情報を表示する必要があります。以下のようなことはしないでください :
空の状態の設定
あなたのデバイスがサーバーとやりとりするとき、ユーザーは何を見るのでしょうか?0を表示させたいのか、空のリストを表示させたいのかを考えなければならないのは残念です。
モバイルバンキングアプリがLie-Fiに遭遇した場合、以下のように表示されることがあります:
私のお金はどこに行ったの?お金が空になったのではなく、Lie-Fiによってなりすまされただけです。ゼロを削除して空のメッセージを表示してみてください:
間違った情報を表示するくらいなら、空白のままでいい
いくつかの教訓
嘘と無駄遣いのテスト
サーバーの帯域幅には限りがあり、ユーザーがテストを行うためだけにサーバーにpingを送信するために多くの帯域幅を費やすことは、サーバーにとって少し多すぎる帯域幅消費です。
このようなサービスは、VIPユーザーや、帯域幅が安価な特定の地域、あるいはテストなしの地域など、リッチな人向けに提供することを検討してください。
リクエストの優先順位付けは無意味
Lie-Fiは実に遅い接続であることがあります。多くの種類の情報を表示する画面がある場合、以下のように、開始されたリクエストを情報の重要度によってソートすることを検討するとよいでしょう:
見た目は素晴らしいですが、実質的には効果がありません。
リクエストの送信順序を変更しても、同じ順序で応答を受け取るわけではありません。
考えられる原因は3つ:
- リクエストは必ずしも同じソート順でサーバーに到着するとは限りません。
- 処理時間はリクエストごとに異なります。
- レスポンスのデータサイズも異なります
自分のサイトでLie-Fi環境をテストするにはどうすればいいですか?
クロームの開発者ツールにはこの機能があり、低帯域幅やオフラインなど、さまざまなネットワーク環境をシミュレートできます。
要約
ツールを効果的に使用し、複数のネットワークでサイトをテストすることで、このような劣悪なネットワーク状況でも、ユーザーに最高の体験を提供することができます。