更改媒体播放器 URI

问题描述 投票:0回答:2

我有以下工作代码:

@Override
        protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.player);

        videoView = (VideoView)this.findViewById(R.id.videoView);
        playVideo();

        // video finish listener
        videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {

                @Override
                public void onCompletion(MediaPlayer mp) {
                        mp.start();
                }
        });
    }

    public void playVideo() {
                MediaController mc = new MediaController(this);
                videoView.setMediaController(mc);
                videoView.setVideoURI(Uri.parse("http://sayedhashimi.com/downloads/android/movie.mp4"));
                videoView.requestFocus(); 
        }

我只想在视频结束时更改 MediaPlayer 数据源(setOnCompletionListener)。

android uri media-player
2个回答
9
投票

我正在研究同样的问题。这是我想出的:

   public void onCompletion(MediaPlayer mp) {
       mp.reset();
       mp.setDataSource(this, newUri);
       mp.start();
   }

0
投票

这是我的解决方案

mp.release()
mp = createNew(context,newUri)
mp.start()

我尝试过的其他任何事情都给我带来了错误,如上所述这里 每次创建新的媒体播放器不会对性能造成太大影响 因为无论如何你很可能一次只有一个。

希望有帮助; )

© www.soinside.com 2019 - 2024. All rights reserved.