【发布时间】:2012-02-16 18:28:00
【问题描述】:
我在本地系统上创建了一个小型 Asp.Net 网站,该网站只有一个页面,该页面将 Flash 播放器嵌入到播放在线视频流的页面中。
我使用 Android WebView 加载该页面以播放该视频流。
代码如下:
WebView _webview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
this._webview = new WebView(getApplicationContext());
WebSettings webSettings = this._webview.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setPluginsEnabled(true);
webSettings.setPluginState(WebSettings.PluginState.ON);
Bundle bundle = getIntent().getExtras();
String videoUrl = bundle.getString("videoUrl");
this._webview.loadUrl("http://ip/FlashLiveStreamPlayer/Default.aspx?url=" + videoUrl);
setContentView(this._webview);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
我正在 Motorola Xoom Tablet 和 Logitech Google TV 上对此进行测试。 WebView 在平板电脑上工作正常,并加载包含 Flash 对象的 html 页面。但是 Google TV 设备向我显示了“未安装 Flash”图标。
经过一番研究,我发现 here google tv 中的 Chrome 浏览器使用自己的基于 chrome for linux 的渲染引擎。它有自己的仅在 chrome 上运行的 Flash 播放器。但另一方面,webview 使用 webkit 渲染引擎,这是在普通安卓手机上可以找到的渲染引擎。渲染引擎无法访问或使用 Chrome 中专门使用的其他 Flash 播放器。
我尝试直接从 Android Market(不是来自 Google TV Maeket)在 google tv 上安装 Flash Player,但它不适用于 Google TV ...或者我可以说它不支持单独安装可供以下用户使用的 Flash Player Flash 内容仅在 Google TV 中的 WebView 内......但 Flash Player 可以单独安装在平板电脑上,因此平板电脑/手机上的 WebView 可以使用 Flash 内容。是吗??
我已经尝试播放直播很多天了。我首先尝试 MediaPlayer 这样做......但它不能很好地播放 rtsp: 流......它实际上在一分钟后永远挂起......我们已经检查过在索尼/罗技电视和摩托罗拉 Xoom 平板电脑上.. 但一点运气都没有。 ...我在 SO 上发布了它,Google 的人正在研究它...我希望他们至少会提出一些替代方案...如果不是完整的修复
那就是我正在尝试在 Flash 播放器内的 html 页面中播放流,并在 WebView 中向用户显示该页面...但它仅适用于平板电脑,不适用于 Google TV...
非常感谢任何帮助。
编辑: 或者您可以告诉我 Google TV 和其他 Android 设备最支持哪种媒体格式...我知道有一个 Google TV Supported Formats 列表.. 但我想知道其中经过测试的最佳格式,它不仅可以在 Google TV 上流畅运行,而且还支持手机和平板电脑。
【问题讨论】:
标签: android android-webview google-tv rtsp-client