0

特定の IP:PORT/service/ でサービスが実行されているかどうかを確認し、そうでない場合は別の IP にフォールバックする必要があります。これをアプリ内の 1 か所で行っています。

有効なリクエストを送信してIOエラーの可能性をキャッチするのではなく、生きている場合にPINGする方法はありますか?

4

2 に答える 2

0

Web サービスの可用性チェックについては、受け入れられたこの質問への回答を参照してください。Web サービスが存在しない場合 (そうでない場合)、フォールバック接続を試してください。

AndroidでのWebサービスの可用性チェック

于 2013-04-10T09:39:46.090 に答える
0

私がこれを解決した方法は次のとおりです。

/service/pingstatus で応答する Ping メソッドをバックエンドに実装しましたHTTP_OK (200)。非常に短い接続タイムアウトを設定してテストする必要がある各 IP アドレスを確認し、接続が成功するかどうかを確認します (返されるステータスは 200 です)。

ローカル Wi-Fi ネットワーク上のすべての IP を調べて、ローカル ネットワーク サービスがホストされている場所を見つける必要がありました。デバイスは同じ Wi-Fi ネットワークに接続されているため、200 ミリ秒の接続タイムアウトを設定しました。これは、チェックが高速であることを確認するのに十分な時間でした。

于 2013-10-13T18:09:30.763 に答える