我有以下活動的應用程序:活動不破壞完全
A->B->C
在C
我使用下面的代碼時,我的web服務返回true發揮循環MP3文件(我們會定期檢查):
void PlayBeepLoop()
{
try {
if(player.isPlaying())
return;
AssetFileDescriptor descriptor = getAssets().openFd("beep.mp3");
player.reset();
player.setDataSource(descriptor.getFileDescriptor(), descriptor.getStartOffset(), descriptor.getLength());
descriptor.close();
player.prepare();
player.setVolume(1f, 1f);
player.setLooping(true);
player.start();
} catch (Exception e) {
e.printStackTrace();
}
}
的問題是,如果我從C->B
去逼人退,我相信循環在後臺繼續運行,當它返回true它會發出蜂鳴聲。
繼C
代碼也不起作用:
public void onBackPressed() {
super.onBackPressed();
finish();
}
請幫助 PS:我需要提示音按下後退按鈕時,僅停止。應用程序仍在顯示時按下主屏幕按鈕C
應允許在應用程序處於後臺時發出嘟嘟聲。
嘗試停止循環以某種方式調用'完成()之前;'。 – Fusseldieb
如果整個活動都沒有了,爲什麼媒體播放器仍然活着? –
看看:http://stackoverflow.com/questions/4924071/calling-finish-on-an-android-activity-doesnt-actually-finish – Fusseldieb