我想在WebView中播放YouTube视频,WebView首先显示带有播放按钮的视频,但点击播放按钮后开始进度条,2-3秒后停止进度条和黑色屏幕空白.
Image1:视频首先看播放按钮
Image2:点击播放按钮后屏幕变为空白.
请!帮助我为什么视频没有开始.
IMAGE:1 
IMAGE:2

这是我在webview中播放YouTubeVideo的源代码..请帮帮我...
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
WebView wv = (WebView) findViewById(R.id.webView1);
wv.getSettings().setJavaScriptEnabled(true);
wv.getSettings().setPluginsEnabled(true);
final String mimeType = "text/html";
final String encoding = "UTF-8";
String html = getHTML();
wv.loadDataWithBaseURL("", html, mimeType, encoding, "");
}
public String getHTML() {
String html = "<iframe class=\"youtube-player\" style=\"border: 0; width: 100%; height: 95%; padding:0px; margin:0px\" id=\"ytplayer\" type=\"text/html\" src=\"http://www.youtube.com/embed/"
+ "J2fB5XWj6IE"
+ "?fs=0\" frameborder=\"0\">\n"
+ "</iframe>\n";
return html;
}
Run Code Online (Sandbox Code Playgroud) 我尝试了以下方法:
WebView wv = (WebView) findViewById(R.id.webView1);
String playVideo= "<html><body><iframe width='200' height='143' src='http://www.youtube.com/embed/JW5meKfy3fY' frameborder='0' allowfullscreen></iframe></body></html>";
wv.getSettings().setPluginsEnabled(true);
wv.getSettings().setAllowFileAccess(true);
wv.getSettings().setPluginState(PluginState.ON);
wv.getSettings().setBuiltInZoomControls(true);
wv.getSettings().setJavaScriptEnabled(true);
wv.loadData(playVideo, "text/html", "utf-8");
Run Code Online (Sandbox Code Playgroud)
我只看到缩略图然后当我点击它时,框架变成黑色并且不加载视频.我的目标是API 15,我有互联网许可.我如何在Android webview中运行html5 youtube iframe视频?
我目前正在开发一个带屏幕方向肖像的应用程序,我有需要全屏支持的html 5视频.我在webview中添加了一个WebChromeClient,它覆盖了一些方法.当我坚持纵向方向时,一切都工作得很好,但当我试图在全屏时将方向切换到风景时,我遇到了崩溃.任何线索?
覆盖方法:
public void onShowCustomView(View view, CustomViewCallback callback) {
super.onShowCustomView(view, callback);
if (mCustomViewContainer != null) {
callback.onCustomViewHidden();
return;
}
if(interfazWeb==null)
interfazWeb = (FragTabActivity) getActivity();
if (view instanceof FrameLayout) {
mCustomViewContainer = (FrameLayout) view;
mCustomViewCallback = callback;
interfazWeb.getCustomContentView().setVisibility(View.INVISIBLE);
interfazWeb.addContentView(mCustomViewContainer, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT, Gravity.CENTER));
interfazWeb.setBackDelegate(new BackDelegate(){
public boolean shouldOverrideBackButton() {
if(mCustomViewCallback!=null){//first calling onHideCustomView()
onHideCustomView();
return true;
}
return false;
}
});
mCustomViewContainer.bringToFront();
//interfazWeb.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
}
@Override
public void onHideCustomView() {
// TODO Auto-generated method stub
if(interfazWeb==null)
interfazWeb = (FragTabActivity) getActivity();
if(mCustomViewContainer!=null){ …Run Code Online (Sandbox Code Playgroud) 我正在开发一个应用程序,它可以使用iframe在webview中播放youtube视频.我的代码如下:
String summary = "<iframe height='"
+ displayWidth
+ "' width='"
+ 800
+ "' frameborder='0' src='http://www.youtube.com/embed/ZfekaIW6esA?rel=0'></iframe>";
if (flashInstalled) {
mWebView.loadData(summary, "text/html", null);
container.addView(mWebView);
} else {
alert.setMessage("Flash player is not installed on the device!");
alert.show();
}
Run Code Online (Sandbox Code Playgroud)
它工作正常,但当我缩放它并滚动它然后它将重叠其他布局看看我的屏幕截图


请给我更好的解决方案.感谢名单
我正在制作一个音乐APP,它显示歌词和歌曲信息,还可以播放来自youtube网址的歌曲.
在我的活动中,有一些TextViews(用于歌词/信息)和一个VideoView(用于youtube链接).
我创建了一个名为YoutubeVideo的类,它执行以下操作:
VideoView.setVideoURI(Uri.parse(rtsp))并播放视频.如果你想知道,我会像这样使用这个类: new YoutubeVideo(VideoView).setVideo(artist + " " + title);
它有效,但我遇到了一个问题:它是一个3gp的文件......质量非常糟糕.我怎样才能获得质量更好的网址?(MP4/FLV/ECT?)
像iPhone这样的视频标签适用于iPhone,但不适用于Android:
<video id="video" width="320" height="240" poster="video/placeholder.jpg" autobuffer controls>
<source src="pr6.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
<source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"'>
</video>
Run Code Online (Sandbox Code Playgroud)
使用上面的代码,Android甚至无法点击剪辑.它只会看到海报图像.
然而,如下所示的视频标签适用于Android:
<video src="vpr6.mp4" poster="video/placeholder.jpg" onclick="this.play();"/>
Run Code Online (Sandbox Code Playgroud)
但是,我仍然需要多个源功能(对于Firefox ogv支持...).下面的代码不起作用(如果我将javascript粘贴到源代码中,它们也不起作用):
<video id="video" width="320" height="240" autobuffer controls onclick="this.play();">
<source src="pr6.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
<source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"'>
</video>
Run Code Online (Sandbox Code Playgroud)
使用上面的代码,剪辑可以在Android中单击,但仍然无效.
有人可以帮忙吗?
我在我的应用程序中使用android webview来显示来自youtube的视频,效果很好。
但我希望它是自动播放的。
这是我的活动,我在videoUrl后面附加了“?autoplay = 1”,但没有任何变化,它仍然不是自动播放。
public class LandVideoAct extends Activity {
WebView mWebView;
String videoURL = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.landfull);
videoURL = "http://www.youtube.com/embed/VYIi49czywo?autoplay=1";
mWebView = (WebView) findViewById(R.id.fullwebview);
String vid = "<html><body style=\"margin: 0; padding: 0\"><iframe width=\"100%\" height=\"100%\" src=\""+videoURL+"\" type=\"text/html\" frameborder=\"0\"></iframe><body><html>";
WebChromeClient mWebChromeClient = new WebChromeClient(){
public void onProgressChanged(WebView view, int newProgress) {
}
};
mWebView.getSettings().setPluginState(WebSettings.PluginState.ON);
mWebView.setWebChromeClient(mWebChromeClient);
mWebView.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
mWebView.loadUrl("javascript:(function() { document.getElementsByTagName('video')[0].play(); })()");
} …Run Code Online (Sandbox Code Playgroud) 我正在制作RSS阅读器应用程序,我从URL获取RSS数据,RSS数据可以包含YouTube视频的链接.
以下是与youtube vide相关的链接示例:
div class="video-shortcode"><iframe title="YouTube video player" width="600"
height="350" src="http://www.youtube.com/embed/HXrcUyCVA6c"
frameborder="0" allowfullscreen></iframe></div>
Run Code Online (Sandbox Code Playgroud)
当我运行我的应用程序时,没有视频,它全黑,我无法播放它.
我如何在WebView中播放视频?
编辑: 结果如下:

这是我的代码:
// set webview properties
WebSettings ws = desc.getSettings();
ws.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);
ws.getPluginState();
ws.setPluginState(PluginState.ON);
ws.setJavaScriptEnabled(true);
ws.setUserAgent(0);
ws.setJavaScriptCanOpenWindowsAutomatically(true);
desc.setWebChromeClient(new WebChromeClient() {
});
desc.loadDataWithBaseURL("http://www.balkanandroid.com/", feed
.getItem(pos).getContent(), "text/html", "UTF-8", null);
Run Code Online (Sandbox Code Playgroud)
我的AndroidManifest.xml中有android:hardwareAccelerated ="true".
我已经按照如何使用youtube gdata的教程.使用来自youtube的视频和来自stackoverflow的onclick填充列表视图
但仍然在youtube上播放的视频不在我的应用程序中.请帮我找到这个.