带有SurfaceView的Mediaplayer.create返回null

问题描述

我想通过url在我的应用中播放视频。有什么办法可以做到这一点?我用SurfaceView创建了一个媒体播放器,但是Mediaplayer.create()返回null。

    MediaPlayer mediaPlayer;
    SurfaceHolder holder = binding.surfaceView.getHolder();

    holder.addCallback(new SurfaceHolder.Callback() {
        @Override
        public void surfaceCreated(SurfaceHolder holder) {
            mediaPlayer.setdisplay(holder);
            mediaPlayer.start();
        }

        @Override
        public void surfaceChanged(SurfaceHolder holder,int format,int width,int height) {
            
        }

        @Override
        public void surfaceDestroyed(SurfaceHolder holder) {

        }
    });

    mediaPlayer = MediaPlayer.create(requireContext(),Uri.parse("https://youtu.be/jsIGuRePyeA"));

我也尝试过将surfaceHolder作为mediaplayer中的第三个参数传递,但它也返回null。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)