0

ストリーミング 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);}
4

1 に答える 1

0

このコードでさらに遊んで、いくつかのマイナーな変更を加えた後、このコードは期待どおりに機能しました。多分それは道を下って他の誰かを助けるでしょう。

于 2013-03-05T18:51:48.943 に答える