我需要在自定义对话框中的webView中显示。 无论如何,我可以加载youtube网站,并导航视频,但当我想播放一些视频时,当我点击播放时没有任何反应。视频只是选择橙色闪光,但不开始加载和播放。问题是什么?
我在网上找到了教程,并尝试修改它。这是代码:
dialog = new Dialog(this);
dialog.setContentView(R.layout.dialog);
pd = (ProgressBar) dialog.findViewById(R.id.web_view_progress_bar);
webview = (WebView) dialog.findViewById(R.id.web_view);
webview.getSettings().setPluginState(PluginState.ON);
webview.getSettings().setJavaScriptEnabled(true);
webview.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
if (progress < 100 && pd.getVisibility() == ProgressBar.GONE) {
pd.setVisibility(ProgressBar.VISIBLE);
}
pd.setProgress(progress);
if (progress == 100) {
pd.setVisibility(ProgressBar.GONE);
}
}
});
webview.setWebViewClient(new YoutubeWebViewClient());
//shouldOverrideUrlLoading(webview, this.getUrl());
webview.loadUrl(this.getUrl());
dialog.show();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && webview.canGoBack()) {
webview.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
private class YoutubeWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
帮助?
更新:
我已尝试以其他方式做到这一点,但又出现了问题......
我想在webView中嵌入youtube html5播放器。我只是在没有youtube视频的情况下回到现场。在webView的右上角是youtube标志,就是这一切。没有Android手机,在Android x86平台上测试应用程序。这是一个问题吗?
帮助:)不关心实现的方式,我只需要这个工作^^
答案 0 :(得分:0)
我不知道为什么但是webviewclient类导致问题,我们可以在默认浏览器中运行它删除webviewclient类并且模拟加载youtube的url你将能够在2.2 for 2.1上运行它只需使用intent并通过parse方法通过youtube应用程序打开它
startActivity(new Intent(Intent.ACTION_VIEW,Uri.parse(String.format(“http://www.youtube.com/v/%s”)))); }
答案 1 :(得分:0)
就我现在发现的情况而言,这是android webview中的一种错误,对于我来说,简单地在manifest中添加了Hardware Accleration权限。在我的webview中嵌入的视频开始播放之后。