私のアプリを常にオンラインにしたい。このために、サービス内にスレッドを実装しています。スレッドは5秒ごとにインターネットを繰り返し確認します。では、これを行う最善の方法は何ですか?私は自分のコードを常にバックグラウンドで実行できるようにし、リソースを使いやすくしたい。私はサービス内でスレッドを試しましたが、デバイスが遅れます。数秒ごとにインターネット接続をチェックする最良の方法は何ですか?
public Boolean isOnline() {
try {
Process p1 = java.lang.Runtime.getRuntime().exec("ping -c 1 www.google.com");
int returnVal = p1.waitFor();
boolean reachable = (returnVal==0);
return reachable;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
。また投票をする前に理由を提示しなければなりません。 – user7892106
私はダウン投票者の1人ではありませんが、あなたのコメントは偽です。あなたは投票の前に理由を提示してはいけません。私はそれがいいと思うだろうが、それは間違いなく義務ではない。 – jotasi
ここで意見に基づく質問をするべきではありません。これがダウンボートの理由です。各方法の共通点*ベストスコア*はありません。メソッドがあります。これは、誰かの意見**に最適です。 –