Android MediaPlayer 重复播放的问题。

发布于 2022-09-04 20:56:12 字数 1260 浏览 16 评论 0

当我重复播放一个文件的时候,爆出各种错, isPlaying stop,都会不同的报错,下面是我的代码,请大家帮助下! 谢谢!

public void playerVoice(String json) {
        if (TextUtils.isEmpty(json))
            return;
        JSONObject jsonObject = JSON.parseObject(json);

        if (player == null) {
            player = new MediaPlayer();
            player.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                @Override
                public void onPrepared(MediaPlayer mp) {
                    player.start();
                }
            });
            player.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
                @Override
                public void onCompletion(MediaPlayer mp) {
                    mp.stop();
                    mp.reset();
                }
            });
        }

        try {
            if (player.isPlaying()) {
                player.stop();
                player.reset();
            }

        } catch (Exception e) {
            player.stop();
            player.reset();
        }


        try {
            player.setDataSource(jsonObject.getString("fullPath"));
            player.prepareAsync();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

戈亓 2022-09-11 20:56:12

player.reset();把这句代码去掉之后试试呢

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文