![](/img/trans.png)
[英]How to make media player stop when pressing device back button from a fragment back to activity
[英]How do I avoid a media player crash when the back button is clicked on the device?
我在Android Studio項目中有一個媒體播放器。 在所連接的電話上單擊后退按鈕時,它會崩潰。 這是我從Logcat收集的錯誤信息:“無法破壞活動{com.example.proj / com.example.proj.RadioActivity}:java.lang.NullPointerException:嘗試調用虛擬方法'void android.media。 MediaPlayer.stop()'在空對象引用上”
以下是相關代碼段:
@Override
public void onDestroy() {
super.onDestroy();
stop();
}
public void onCompletion(MediaPlayer mp) {
stop();
}
我發現,如果我單擊“播放”,然后單擊后退按鈕,則該應用程序不會崩潰,這表明即使沒有媒體在播放,播放也不是空對象引用。
我該如何編寫條件,如果單擊后退按鈕並且MediaPlayer沒有在播放,則不要破壞播放器/應用程序? 我沒有引用代碼中的按鈕。
@Override
protected void onDestroy() {
super.onDestroy();
if (mediaPlayer != null) {
mediaPlayer.stop();
}
}
在背面按此代碼:
@Override
public void onBackPressed() {
if (videoView.isPlaying()) {
videoView.pause();
}
super.onBackPressed();
}
覆蓋活動中的onBackPressed()
並在其中添加stop()
方法。 添加以下代碼:
@Override
public void onBackPressed(){
super.onBackPressed();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.