
android开发学习,使用webview访问优酷无法播放视频,报错!急等答案!!! 180
我是使用webview加载优酷,真机测试,在点击视频时,log输出错误如下:calltoOpenGLESAPIwithnocurrentcontext(loggedonc...
我是使用webview加载优酷,真机测试,在点击视频时,log输出错误如下:
call to OpenGL ES API with no current context (logged once per thread);
而webview内页面其他内容都已加载,只有视频播放窗口为空白。
具体源码如下:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mywebview = new WebView(this);
// get the WebView's instance
// 设置WebView属性,能够执行Javascript脚本
mywebview.getSettings().setJavaScriptEnabled(true);
WebSettings settings = mywebview.getSettings();
settings.setPluginsEnabled(true);
settings.setJavaScriptEnabled(true);
settings.setPluginState(PluginState.ON);
settings.setJavaScriptCanOpenWindowsAutomatically(true);
settings.setAllowFileAccess(true);
settings.setPluginsEnabled(true);
settings.setDefaultTextEncodingName("UTF-8");
mywebview.setBackgroundColor(0);
mywebview.setVisibility(View.VISIBLE);
// 加载指定url的网页
//mywebview.loadUrl("http://player.youku.com/player.php/Type/Folder/Fid/18443222/Ob/1/sid/XNDY1ODQ0MjU2/v.swf");
mywebview.loadUrl("http://www.youku.com");
mywebview.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view,
String url) { // 重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边
view.loadUrl(url);
return true;
}
});
setContentView(mywebview);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mywebview.canGoBack()) {
// goBack()返回WebView的上一层页面
mywebview.goBack();
return true;
}
return false;
}
}
求大神解答!复制答案的就请高抬贵手,时间紧迫,刷分请转别处,谢谢!!!
不知道到底哪里出错了,弄了一晚上了,在线等答案!解决了继续加分!!! 展开
call to OpenGL ES API with no current context (logged once per thread);
而webview内页面其他内容都已加载,只有视频播放窗口为空白。
具体源码如下:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mywebview = new WebView(this);
// get the WebView's instance
// 设置WebView属性,能够执行Javascript脚本
mywebview.getSettings().setJavaScriptEnabled(true);
WebSettings settings = mywebview.getSettings();
settings.setPluginsEnabled(true);
settings.setJavaScriptEnabled(true);
settings.setPluginState(PluginState.ON);
settings.setJavaScriptCanOpenWindowsAutomatically(true);
settings.setAllowFileAccess(true);
settings.setPluginsEnabled(true);
settings.setDefaultTextEncodingName("UTF-8");
mywebview.setBackgroundColor(0);
mywebview.setVisibility(View.VISIBLE);
// 加载指定url的网页
//mywebview.loadUrl("http://player.youku.com/player.php/Type/Folder/Fid/18443222/Ob/1/sid/XNDY1ODQ0MjU2/v.swf");
mywebview.loadUrl("http://www.youku.com");
mywebview.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view,
String url) { // 重写此方法表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边
view.loadUrl(url);
return true;
}
});
setContentView(mywebview);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mywebview.canGoBack()) {
// goBack()返回WebView的上一层页面
mywebview.goBack();
return true;
}
return false;
}
}
求大神解答!复制答案的就请高抬贵手,时间紧迫,刷分请转别处,谢谢!!!
不知道到底哪里出错了,弄了一晚上了,在线等答案!解决了继续加分!!! 展开
若以下回答无法解决问题,邀请你更新回答
5个回答
展开全部
在代码中加入
webview.getSettings().setJavaScriptEnabled(true);//支持js
webview.getSettings().setPluginsEnabled(true);//设置webview支持插件
同时要在Manifest配置文件的application中加入 android:hardwareAccelerated="true" 硬件加速,这样才能够播放视频
webview.getSettings().setJavaScriptEnabled(true);//支持js
webview.getSettings().setPluginsEnabled(true);//设置webview支持插件
同时要在Manifest配置文件的application中加入 android:hardwareAccelerated="true" 硬件加速,这样才能够播放视频
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在loadUrl()之前加上mywebview.setWebChromeClient(new WebChromeClient() {}); // In order to support inline HTML5 video in your application

你对这个回答的评价是?
展开全部
具体神马情况?分数很诱人,可优酷说呢么什么的谁听得清啊?别太着急,准确告诉我!
追问
就是我在学习开发android,用一个webview浏览后缀名为".swf"的地址时无法播放。(这个swf为flash真实地址,不是流媒体地址。)
如果您会的话请直接加我Q:307552059
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询