私は isReachable() メソッドを使用しており、Android 携帯電話からローカル ネットワーク上の PC に到達しようとしています。pc のファイアウォールがオンの場合は false を返し、ファイアウォールがオフの場合は true を返します。ファイアウォールでポート 7 (echo) を許可する新しいルールを作成しようとしました。しかし、うまくいきませんでした。ファイアウォールがオンのときに isReachable() が true を返すようにする方法を教えてください。
2 に答える
1
ドキュメントには次のように記載されています。
典型的な実装では、特権を取得できる場合は ICMP ECHO REQUEST を使用します。それ以外の場合は、宛先ホストのポート 7 (Echo) で TCP 接続を確立しようとします。
次に、ファイアウォールで ICMP ECHO が許可されていることを確認する必要があります。
また、他の PC でサービスを実行している場合Socket
は、 によって返された値にもかかわらず、単に を開こうとする可能性がありますisReachable
。
于 2013-03-10T11:56:01.867 に答える
0
まったく使用しないことをお勧めします。通常の方法で接続してみて、それに応じて障害を処理してください。isReachableは、それに役立つものを何も追加しません。
于 2013-03-11T12:00:32.597 に答える