Android:暂停并重新启动新活动的音频,但暂停和恢复屏幕旋转

时间:2012-06-09 20:34:07

标签: android audio rotation restart

我有一个Android应用程序,在我的主要活动中,我可以播放音乐onCreate(),暂停音乐onPause()并重启音乐onResume()。我正在使用MediaPlayer。问题是当我在主要活动上旋转屏幕时,我不希望音乐重新启动onResume()。当我从另一个活动回到我的主要活动时,我只希望音乐重新启动。有什么建议吗?

  

私人MediaPlayer mp;

     

mp = MediaPlayer.create(MainActivity.this,R.raw.always_sunny);   mp.setLooping(真);   mp.start();

@Override
protected void onPause() {
  super.onPause();
  mp.getCurrentPosition();
  mp.pause();
}

@Override
protected void onResume() {
  super.onResume();
  mp.seekTo(0);
  mp.start();
}

1 个答案:

答案 0 :(得分:3)

将以下属性添加到清单中的活动:

android:configChanges="keyboardHidden|orientation|screenSize"

这样可以避免在方向更改或键盘出现时重新开始活动。

如果您需要在轮换更改时执行某些操作(例如,更改案例中的图片),请将以下方法添加到您的活动中:

@Override
public void onConfigurationChanged (Configuration newConfig) {
  // Change here your image
}