ストリーミング http ソースへの接続が利用できなくなった場合に、接続をタイムアウトにする方法を見つけようとしています。WIFIまたはデータのいずれかでインターネットに接続しているかどうかを確認するチェックを実施しています。Handler を使用していくつかの例を見つけましたが、実際にタイムアウトするようになりましたが、別のクラスにある実際のサービスは停止しません。これにより、エミュレータで ANR が発生します。この問題の処理方法に関する提案や別のアプローチはありますか? お時間をいただきありがとうございます!
public Runnable mUpdateTimeTask = new Runnable() {
public void run() {
Toast.makeText(MainActivity.this, "Running Thread", Toast.LENGTH_LONG).show();
if (RadioService.isMusicActive()==false){
stopPlaying();
}
}
};
private void stopPlaying() {
buttonPlay.setEnabled(true);
buttonStopPlay.setEnabled(false);
stopService(new Intent(this, RadioService.class));//
}
if (v == buttonPlay) {
startPlaying();
mHandler.postDelayed(mUpdateTimeTask, 5000);}