1

我对如何在 Apple Mac OS X (Lion) 上的 Qt (当前为 4.8.5) 中运行 flash 动画的想法有点少。一个像下面这样的简单片段在 Windows 和 linux 上都可以顺利运行,加载插件就好了:

int main(int argc, char *argv[]) {      
  QApplication app(argc, argv);  
  QUrl url("http://www.adobe.com/software/flash/about");

  // Set specific QWebView settings
  QWebSettings *defaultSettings = QWebSettings::globalSettings();
  defaultSettings->setAttribute(QWebSettings::JavascriptEnabled, true);
  defaultSettings->setAttribute(QWebSettings::PluginsEnabled, true);

  webview = new QWebView();
  webview->setGeometry(0,0,640,450);
  webview->load(url);                    
  webview->show();

  return app.exec();
}

我几乎尝试了所有方法,在对这个主题进行了彻底的研究之后,这些是我没有走运的步骤:

  • 自制安装(编译为 64 位二进制文​​件,但 flash 无法播放)
  • homebrew install -universal (编译失败)
  • 从 digia 下载了 qt-everywhere-opensource-src-4.8.5 并编译为 arch i386,因为我阅读了 flash 插件据说需要一个补丁才能作为 64 位库运行,即使在 chromium(不是 chorme)和 safari 中没有任何问题(qt 编译并安装为 /usr/local/Trolltech/Qt-4.8.5/ 中的 32 位二进制文​​件,qmake 运行良好,但 flash 无法播放)
  • 通过删除并重新安装 /Library/Internet Plug-Ins/ 中的文件尝试了几个较旧的 flash 插件,因为您永远不知道 flash ......(没有改变任何事情,没有运气)
  • 尝试使用同上 --arch 剥离 x86_64 版本的 Flash Player.plugin 的各种版本,以便显示为 32 位插件(同样,运气不好)

我的问题是:是否有任何人能够在 Mac OS X 上使用 Qt 4 和 QWebkit 运行 Flash 动画?如果是这样,有人愿意分享他的确切步骤吗?

4

1 回答 1

1

问题是 Qt 4.8.x 和 OSX 上最新版本的 flash 插件不兼容。

我们在https://bugreports.qt-project.org/browse/QTBUG-32931上打开了关于 Qt 的 Jira 跟踪系统的问题,但仍未解决,并且在https://stackoverflow.com/questions上有此问题的副本/18142978/latest-flash-player-for-os-x-not-working-with-qt-4-8-n-applications

无论如何,Qt 5.x 运行良好,所以如果您真的不需要继续使用 Qt4,只需打开最新版本的 Qt,相同的代码应该可以工作。

于 2014-01-17T12:41:50.450 回答