0

我正在为 Linux 的 GTk+3.0 和 webkitGTK+ 开发一个应用程序,它应该在 WebView 中播放 swf 文件。首先,我尝试从设备打开 swf 文件,而不是通过互联网打开,但没有成功。WebView 出现了,但在 WebView 内我只能看到一个白屏(缺少插件)。如果我将相同的 URL 加载到设备浏览器,则 Flash 文件可以正常播放。我得到了 libflashplayer.so 并安装

sudo cp libflashplayer.so /usr/lib/mozilla/plugins/libflashplayer.so sudo mkdir /opt/google/chrome/plugins sudo cp libflashplayer.so /opt/google/chrome/plugins

我想我在 WebView 设置上遗漏了一些东西,但是经过几个小时的搜索和谷歌搜索后,我仍然不知道是什么。

4

1 回答 1

1

如今,如果安装到/usr/lib/mozilla/plugins. (WebKit 不查看,/opt/google/chrome/plugins所以放在那里没有效果。)

在您发布此问题时,WebKitGTK+ 无法处理 Flash,因为 Flash 链接到 GTK+ 2,而您的应用程序正在使用 GTK+ 3。不可能在同一个应用程序中混合使用两个版本的 GTK+;尝试加载 Flash 插件会导致您的应用程序挂起,因此 WebKit 跳过了该插件。所以问题是Adob​​e Flash 与 GTK+ 3 不兼容

如今,WebKitGTK+ 在单独的插件进程中运行插件,因此这不再是问题。它有两个独立的插件进程,一个链接到 GTK+ 3,一个链接到 GTK+ 2,并在运行时选择正确的插件进程用于插件。

于 2016-01-03T02:16:56.920 回答