在视频视频中播放YouTube视频

时间:2012-08-13 07:29:13

标签: android video youtube video-streaming

在我的应用程序中,我有一个视频,我想在那里播放youtube视频。为此,我尝试了很多方法,如

VideoView mVideoView = new VideoView(this);
setContentView(mVideoView);
mVideoView.setVideoURI(Uri.parse("rtsp://v3.cache7.c.youtube.com/CiILENy73wIaGQlOCTh0GvUeYRMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp"));
mVideoView.start();

为此我得到了

08-13 12:33:07.443: D/MediaPlayer(618): Couldn't open file on client side, trying server side
08-13 12:33:09.003: E/MediaPlayer(618): error (1, -2147483648)
08-13 12:33:09.003: E/MediaPlayer(618): Error (1,-2147483648)

然后我试了

VideoView mVideoView = new VideoView(this);
setContentView(mVideoView);
mVideoView.setVideoURI(Uri.parse("vnd.youtube:GDD0Brw-udk"));
mVideoView.start();

我也遇到同样的错误。

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com/watch?v=GDD0Brw-udk&feature=youtube_gdata_player")));

这会离开我的应用程序,并启动我无法控制的移动YouTube。

我使用的另一种方法是

Intent lVideoIntent = new Intent(null, Uri.parse("http://www.youtube.com/get_video_info?&video_id=GDD0Brw-udk")
            , this, IntroVideoActivity.class);
startActivity(lVideoIntent); 

这对我来说也不起作用..

我该怎么办..任何人都可以帮助我......提前谢谢

2 个答案:

答案 0 :(得分:0)

如果您愿意,可以将其放入网页浏览中。这就是我开始工作的方式:

                    webview = (WebView) v.findViewById(R.id.videoview);  
                    String videoPoP = "http://www.youtube.com/v/A6kCkkLo6Rw?";
        webview.setHorizontalScrollBarEnabled(false);
        webview.setVerticalScrollBarEnabled(false);
        webview.getSettings().setJavaScriptEnabled(true);
        webview.getSettings().setPluginState(PluginState.ON);


            String widthAndHeight = "width=\"" + widthdp + "\"  height=\"" + heightdp + "\"";           

         temp = "<object "
                + widthAndHeight
                + ">"
                + "<body style='margin:0;padding:0;'>"
                + "<param name='allowFullScreen' value='false'>"
                + "</param><param name='allowscriptaccess' value='always'>"
                + "</param><embed src='"
                + videoPoP
                + "'"
                + " type='application/x-shockwave-flash'  allowscriptaccess='always' allowfullscreen='true'"
                + widthAndHeight + "></embed></object>";

        webview.loadData(temp, "text/html", "utf-8");

将参数传递给widthdp和heightdp变量中的宽度和高度(静态或动态),并将其放在WebViewClient中,它应该可以正常工作

答案 1 :(得分:0)

您的代码:

VideoView mVideoView = new VideoView(this);
setContentView(mVideoView);
mVideoView.setVideoURI(Uri.parse("rtsp://v3.cache7.c.youtube.com/CiILENy73wIaGQlOCTh0GvUeYRMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp"));
mVideoView.start();

很好,只会检查你的网址。