音楽を再生しているサービスがあります。私はこのようにフェードアウト を実装しました:
@Override
public void onDestroy(){
volume=1.0f;
fade_handler.post(fade_out);
super.onDestroy();
}
これはfade_out Runnableです:
private Runnable fade_out = new Runnable(){
public void run(){
player.setVolume(volume, volume);
if(volume>0.0f){
volume-=0.05f;
fade_handler.postDelayed(fade_out, 200);
}
else{
player.stop();
player.release();
stopForeground(true);
//here should be super.onDestroy()!!!!!!!
}
}
};
問題は、fade_outが終了する前にsuper.onDestroy() get が呼び出されるようになったため、このランナブル内で super.onDestroy() を呼び出したいのですが、どのようにですか?