I don't know why my iframe doesn't want to work, I use html with external file in asset folder. The iFrame appears, but it's written : Error loading player: No playable sources found.
我不知道为什么我的iframe不想工作,我使用html与外部文件在资产文件夹。iFrame出现,但它被写入:错误加载播放器:没有可播放的源代码。
Here is my code :
这是我的代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView wv = (WebView) findViewById(R.id.webcamView);
WebSettings webSettings = wv.getSettings();
webSettings.setBuiltInZoomControls(true);
wv.getSettings().setJavaScriptEnabled(true);
wv.loadUrl("file:///android_asset/test.html");
}
Here is my HTML :
这是我的HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<title>Bundoran Surf Co</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script async="" src="//www.google-analytics.com/analytics.js"></script><script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-40971454-1', 'myipstream.com');
ga('send', 'pageview');
</script><script src="http://jwpsrv.com/library/bkfmKFnaEeKE5iIACp8kUw.js"></script><style type="text/css"></style><script src="http://p.jwpcdn.com/6/11/jwpsrv.js"></script><script src="http://p.jwpcdn.com/6/11/sharing.js"></script><script src="http://p.jwpcdn.com/6/jwpsrv_frq.js"></script><style type="text/css"></style></head>
<body>
<div id="banner"></div>
<div id="my-video"></div>
<div align="center" id="playerKQLqhEDY5doy_wrapper" style="position: relative; display: block; width: 1000px; height: 600px; overflow:auto;-webkit-overflow-scrolling:touch"><a id="beforeswfanchor0" href="#playerKQLqhEDY5doy" tabindex="0" title="Flash start" style="border:0;clip:rect(0 0 0 0);display:block;height:1px;margin:-1px;outline:none;overflow:hidden;padding:0;position:absolute;width:1px;" data-related-swf="playerKQLqhEDY5doy"></a><object type="application/x-shockwave-flash" data="http://p.jwpcdn.com/6/11/jwplayer.flash.swf" width="100%" height="100%" bgcolor="#000000" id="playerKQLqhEDY5doy" name="playerKQLqhEDY5doy" class="jwswf swfPrev-beforeswfanchor0 swfNext-afterswfanchor0" tabindex="0"><param name="allowfullscreen" value="true"><param name="allowscriptaccess" value="always"><param name="seamlesstabbing" value="true"><param name="wmode" value="opaque"></object><a id="afterswfanchor0" href="#playerKQLqhEDY5doy" tabindex="0" title="Flash end" style="border:0;clip:rect(0 0 0 0);display:block;height:1px;margin:-1px;outline:none;overflow:hidden;padding:0;position:absolute;width:1px;" data-related-swf="playerKQLqhEDY5doy"></a><div id="playerKQLqhEDY5doy_aspect" style="display: none;"></div><div id="playerKQLqhEDY5doy_jwpsrv" style="position: absolute; top: 0px; z-index: 10;"></div><div id="playerKQLqhEDY5doy_sharing" style="position: absolute; top: 0px; z-index: 11;"></div></div>
<script type="text/javascript">
jwplayer('playerKQLqhEDY5doy').setup({
playlist: [{
image: "http://www.bundoransurfco.com/wp-content/uploads/2010/12/homepage_offers1.jpg",
sources: [{
file: "http://144.76.75.86/hls/bundoransurfco/playlist.m3u8"
}]
}],
height: 200,
primary: "flash",
width: 315,
controls: true,
autostart: true,
androidhls: true,
sharing: true
});
</script>
<style type="text/css">
#playerKQLqhEDY5doy_wrapper {
left:0em;
right:0em;
top:12.2em;
bottom:-5em;
max-width: 100%;
max-height: 100%;
}
#photo{
position:fixed;
max-width: 100%;
top:50px;
left : 0em;
right:0em;
display:block;
}
iframe, object, embed {
position:relative;
}
</style>
<span id="photo" align="middle">
<img src="http://myipstream.com/images/bundoran.jpeg" width="139" height="50" alt="@ Surf Co">
</body></html>
Here is my Logcat (updated):
这是我的Logcat(更新):
04-27 10:42:55.814 11616-11616/jardelcompany.test V/WebViewChromiumFactoryProvider﹕ Binding Chromium to main looper Looper (main, tid 1) {528248fc}
04-27 10:42:55.814 11616-11616/jardelcompany.test I/LibraryLoader﹕ Expected native library version number "",actual native library version number ""
04-27 10:42:55.814 11616-11616/jardelcompany.test I/chromium﹕ [INFO:library_loader_hooks.cc(116)] Chromium logging enabled: level = 0, default verbosity = 0
04-27 10:42:55.818 11616-11616/jardelcompany.test I/BrowserStartupController﹕ Initializing chromium process, renderers=0
04-27 10:42:55.834 11616-11616/jardelcompany.test E/AudioManagerAndroid﹕ BLUETOOTH permission is missing!
04-27 10:42:55.854 11616-11616/jardelcompany.test D/libEGL﹕ loaded /system/lib/egl/libEGL_genymotion.so
04-27 10:42:55.858 11616-11616/jardelcompany.test D/﹕ HostConnection::get() New Host Connection established 0xb8f59b48, tid 11616
04-27 10:42:55.874 11616-11616/jardelcompany.test D/libEGL﹕ loaded /system/lib/egl/libGLESv1_CM_genymotion.so
04-27 10:42:55.874 11616-11616/jardelcompany.test D/libEGL﹕ loaded /system/lib/egl/libGLESv2_genymotion.so
04-27 10:42:55.918 11616-11616/jardelcompany.test W/chromium﹕ [WARNING:mailbox_synchronizer.cc(36)] MailboxSync not supported due to missing EGL image/fence support
04-27 10:42:55.942 11616-11616/jardelcompany.test D/dalvikvm﹕ GC_FOR_ALLOC freed 148K, 6% free 3710K/3928K, paused 3ms, total 3ms
04-27 10:42:55.946 11616-11616/jardelcompany.test D/dalvikvm﹕ GC_FOR_ALLOC freed 4K, 6% free 3927K/4152K, paused 3ms, total 3ms
04-27 10:42:55.950 11616-11616/jardelcompany.test I/dalvikvm-heap﹕ Grow heap (frag case) to 6.320MB for 2536932-byte allocation
04-27 10:42:55.954 11616-11626/jardelcompany.test D/dalvikvm﹕ GC_FOR_ALLOC freed <1K, 4% free 6405K/6632K, paused 3ms, total 3ms
04-27 10:42:56.010 11616-11640/jardelcompany.test W/chromium﹕ [WARNING:proxy_service.cc(890)] PAC support disabled because there is no system implementation
04-27 10:42:56.294 11616-11616/jardelcompany.test W/EGL_genymotion﹕ eglSurfaceAttrib not implemented
04-27 10:42:56.298 11616-11616/jardelcompany.test E/OpenGLRenderer﹕ Getting MAX_TEXTURE_SIZE from GradienCache
04-27 10:42:56.298 11616-11616/jardelcompany.test E/OpenGLRenderer﹕ MAX_TEXTURE_SIZE: 16384
04-27 10:42:56.314 11616-11616/jardelcompany.test E/OpenGLRenderer﹕ Getting MAX_TEXTURE_SIZE from Caches::initConstraints()
04-27 10:42:56.322 11616-11616/jardelcompany.test E/OpenGLRenderer﹕ MAX_TEXTURE_SIZE: 16384
04-27 10:42:56.322 11616-11616/jardelcompany.test D/OpenGLRenderer﹕ Enabling debug mode 0
04-27 10:42:56.334 11616-11616/jardelcompany.test W/AwContents﹕ nativeOnDraw failed; clearing to background color.
04-27 10:42:56.538 11616-11616/jardelcompany.test W/AwContents﹕ nativeOnDraw failed; clearing to background color.
04-27 10:42:56.830 11616-11616/jardelcompany.test I/chromium﹕ [INFO:CONSOLE(1)] "Uncaught TypeError: Object #<Object> has no method 'setSampleFrequency'", source: http://p.jwpcdn.com/6/jwpsrv_frq.js (1)
04-27 10:42:56.954 11616-11616/jardelcompany.test I/chromium﹕ [INFO:async_pixel_transfer_manager_android.cc(60)] Async pixel transfers not supported
04-27 10:42:56.978 11616-11616/jardelcompany.test E/chromium﹕ [ERROR:gles2_cmd_decoder_autogen.h(1082)] [GroupMarkerNotSet(crbug.com/242999)!:28450CB9]GL ERROR :GL_INVALID_OPERATION : GetIntegerv: <- error from previous GL command
04-27 10:42:56.998 11616-11616/jardelcompany.test I/chromium﹕ [INFO:async_pixel_transfer_manager_android.cc(60)] Async pixel transfers not supported
04-27 10:42:57.018 11616-11616/jardelcompany.test E/chromium﹕ [ERROR:gles2_cmd_decoder_autogen.h(1082)] [GroupMarkerNotSet(crbug.com/242999)!:C0A812B9]GL ERROR :GL_INVALID_OPERATION : GetIntegerv: <- error from previous GL command
04-27 10:42:57.102 11616-11616/jardelcompany.test D/dalvikvm﹕ GC_FOR_ALLOC freed 89K, 3% free 7193K/7376K, paused 4ms, total 4ms
04-27 10:43:00.362 11616-11616/jardelcompany.test I/chromium﹕ [INFO:async_pixel_transfer_manager_android.cc(60)] Async pixel transfers not supported
04-27 10:43:00.750 11616-11616/jardelcompany.test E/chromium﹕ [ERROR:gles2_cmd_decoder_autogen.h(1082)] [GroupMarkerNotSet(crbug.com/242999)!:10D3F9B8]GL ERROR :GL_INVALID_OPERATION : GetIntegerv: <- error from previous GL command
04-27 10:43:01.518 11616-11616/jardelcompany.test E/chromium﹕ [ERROR:gles2_cmd_decoder_autogen.h(69)] [.Video-Offscreen-main-thread-0xb91cb650]GL ERROR :GL_INVALID_ENUM : glBindTexture: target was GL_TEXTURE_EXTERNAL_OES
04-27 10:43:01.518 11616-11616/jardelcompany.test E/chromium﹕ [ERROR:gles2_cmd_decoder_autogen.h(3123)] [.Video-Offscreen-main-thread-0xb91cb650]GL ERROR :GL_INVALID_ENUM : glProduceTextureCHROMIUM: target was GL_TEXTURE_EXTERNAL_OES
1 个解决方案
#1
0
Don't use RTMP sources. RTMP requires Flash, which Android definitely doesn't support, especially in an App.
不要使用RTMP来源。RTMP需要Flash,而Android绝对不支持Flash,尤其是在应用程序中。
So, remove the RTMP source, and just use the HLS one.
因此,删除RTMP源文件,只使用HLS源文件。
Then, under this line:
然后,在这条线:
autostart: true,
Add:
添加:
androidhls: true,
I am not sure if that will work in the app though - you may have to use an HTTP delivered MP4 source.
我不确定这是否适用于应用程序——您可能需要使用HTTP交付的MP4源。
#1
0
Don't use RTMP sources. RTMP requires Flash, which Android definitely doesn't support, especially in an App.
不要使用RTMP来源。RTMP需要Flash,而Android绝对不支持Flash,尤其是在应用程序中。
So, remove the RTMP source, and just use the HLS one.
因此,删除RTMP源文件,只使用HLS源文件。
Then, under this line:
然后,在这条线:
autostart: true,
Add:
添加:
androidhls: true,
I am not sure if that will work in the app though - you may have to use an HTTP delivered MP4 source.
我不确定这是否适用于应用程序——您可能需要使用HTTP交付的MP4源。