【问题标题】:Android media player is not playing again after stopAndroid媒体播放器停止后不再播放
【发布时间】:2021-04-03 02:24:01
【问题描述】:

我正在尝试在我的应用中添加媒体付款人。我有两个浮动操作按钮,播放和暂停。在播放时,音乐开始播放,开始隐藏工厂,暂停工厂表演。按下暂停工厂,暂停工厂隐藏并播放工厂节目。当我第一次付款时,音乐正在播放和停止,但是当我在停止后第二次尝试播放时,音乐没有播放。

下面是我的代码:

public class VideoDetail extends AppCompatActivity {

ActivityVideoDetailBinding activityVideoDetailBinding;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    activityVideoDetailBinding = ActivityVideoDetailBinding.inflate(getLayoutInflater());
    setContentView(activityVideoDetailBinding.getRoot());

    ActionBar ab = getSupportActionBar();
    assert ab != null;
    ab.setTitle("Music");
    ab.setDisplayHomeAsUpEnabled(true);

    Intent intent = getIntent();
    String preview = intent.getStringExtra("preview");

    MediaPlayer player = new MediaPlayer();
    Uri uri = Uri.parse(preview);
    player.setAudioStreamType(AudioManager.STREAM_MUSIC);
    try {
        player.setDataSource(VideoDetail.this, uri);
        player.prepare();
    } catch (IOException e) {
        e.printStackTrace();
    }

    activityVideoDetailBinding.fabPlay.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            try {
                activityVideoDetailBinding.fabPlay.hide();
                activityVideoDetailBinding.fabPause.show();
                player.start();

            } catch(Exception e) {
                System.out.println(e.toString());
            }
        }
    });

    activityVideoDetailBinding.fabPause.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            activityVideoDetailBinding.fabPause.hide();
            activityVideoDetailBinding.fabPlay.show();
            if(player.isPlaying()){
                player.stop();
            }
        }
    });
  }
}

我做错了什么?

【问题讨论】:

    标签: java android


    【解决方案1】:

    您的意思可能是调用MediaPlayer.pause() 而不是stop()

    【讨论】:

      【解决方案2】:

      也许这会对你有所帮助:

      Android Media Player Restart Audio After Calling Stop

      根据这张图:

      https://developer.android.com/reference/android/media/MediaPlayer

      这一切都归结为您正在调用stop(),然后您必须再次准备 Mediaplayer。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-04-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多