为什么 Videoview 无法播放 Youtube 视频?



我正在尝试在某些设备上播放来自Youtube的Youtube视频,但它们返回一个对话框:"视频无法播放"。

我已经阅读了 Youtube API 文档。

我有一个VideoView,我将视频Uri设置为扩展名为.3pg的URL。

这是我的代码:

 VideoView videoView = (VideoView)this.findViewById(R.id.video); 
 MediaController mc = new MediaController(this); 
 videoView.setMediaController(mc);
 videoView.setVideoURI(Uri.parse("rtsp://v1.cache2.c.youtube.com/CigLENy73wIaHwmhXrOROaqgpBMYESARFEgGUgx1c2VyX3VwbG9hZHMM/0/0/0/video.3gp")); 
 videoView.requestFocus(); 
 videoView.start();

我尝试了其他视频并正确播放。我做错了什么?

如果嵌入视频不是您的明确要求,为什么不简单地从 Youtube 视频 URL 开始一个意图,让操作系统为您处理意图?据我所知,这是在安卓上播放视频的最简单方法。例如

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("Your youtube URL here"));
startActivity(intent);

有关 Android Intents 的更多信息,请参阅此链接和 vogella 的教程

以下片段将使您感到震惊。

基本上你需要setOnPreparedListener

 try {
                final VideoView videoView =(VideoView)findViewById(R.id.videoView1);
                // Set video link (mp4 format )
                Uri video = Uri.parse(video_url);
                videoView.setVideoURI(video);
                videoView.setOnPreparedListener(new OnPreparedListener() {
                    public void onPrepared(MediaPlayer mp) {
                       progressDialog.dismiss();
                       videoView.start();
                    }
                });
             }catch(Exception e){
                 progressDialog.dismiss();
                 System.out.println("Video Play Error :"+e.getMessage());
             }
您需要

使用YouTube网址启动一个Intent,然后让操作系统处理它。也就是说,我不认为您可以将YouTube视频直接嵌入到您的活动中,尽管我很想被证明是错误的。

相关内容

  • 没有找到相关文章

最新更新