我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

在electron中显示flash,如果您没有手工指定flash插件的位置的话,那么对于在mac和win来说,代码都是一样的。所以,本篇文章中的代码内容和上一篇文章中的代码内容,也是一模一样的。只不过,本篇文章中,调试环境变成了mac系统。所以,如果您在mac下面调试相关代码,遇到了困难的话,可以看看本篇内容即可。本篇文章主要讲述的是:“mac系统,如何在Electron上集成Flash播放器?”

检测是否需要安装flash

mac的系统偏好设置中,苏南大叔找到flash的相关设置图标。然后切换到更新选项卡,这里提示PPAPI没有安装。额,这就有些尴尬了。

苏南大叔:mac 系统,如何在 Electron 上集成 Flash 播放器? - 000
mac 系统,如何在 Electron 上集成 Flash 播放器?(图9-1)

苏南大叔:mac 系统,如何在 Electron 上集成 Flash 播放器? - 001
mac 系统,如何在 Electron 上集成 Flash 播放器?(图9-2)

苏南大叔:mac 系统,如何在 Electron 上集成 Flash 播放器? - 002
mac 系统,如何在 Electron 上集成 Flash 播放器?(图9-3)

其实,苏南大叔用本机的chrome访问adobe的官方demo网页的时候,是可以显示flash的。但是electron显示api,所必须的这个PPAPI,却是个没有安装的状态。

苏南大叔:mac 系统,如何在 Electron 上集成 Flash 播放器? - 006
mac 系统,如何在 Electron 上集成 Flash 播放器?(图9-4)

那么我们就点击安装按钮,安装一下flash的PPAPI吧。

安装地址是:https://get3.adobe.com/cn/flashplayer/

如果不能正常下载的话,请检测浏览器的user-agent,可能是个错误的UA,导致不能正常下载。

苏南大叔:mac 系统,如何在 Electron 上集成 Flash 播放器? - 003
mac 系统,如何在 Electron 上集成 Flash 播放器?(图9-5)

苏南大叔:mac 系统,如何在 Electron 上集成 Flash 播放器? - 004
mac 系统,如何在 Electron 上集成 Flash 播放器?(图9-6)

苏南大叔:mac 系统,如何在 Electron 上集成 Flash 播放器? - 005
mac 系统,如何在 Electron 上集成 Flash 播放器?(图9-7)

安装之后,就可以通过app.getPath('pepperFlashSystemPlugin')找到最终的路径了。不过,这路径目前在本篇文章中,暂时没用,在下一篇相关文章中,也许会是重点所在哦。

苏南大叔拿到的插件路径是:/Library/Internet Plug-Ins/PepperFlashPlayer/PepperFlashPlayer.plugin

苏南大叔:mac 系统,如何在 Electron 上集成 Flash 播放器? - 008
mac 系统,如何在 Electron 上集成 Flash 播放器?(图9-8)

相关代码及效果图

安装完毕之后,我们还是用相同的老代码来演示:mac下的,electron加载显示flash。

代码及效果

main.js:

//...
app.commandLine.appendSwitch('ppapi-flash-path',app.getPath('pepperFlashSystemPlugin'));
//app.commandLine.appendSwitch('ppapi-flash-version', '29.0.0.013');
function createWindow () {
  mainWindow = new BrowserWindow({
    width: 320,height: 700,
    webPreferences:{
      'plugins': true
    }
  });
  mainWindow.loadURL(url.format({
    pathname: path.join(__dirname, 'index.html'),
    //pathname: path.join(__dirname, 'swf.swf'),
    protocol: 'file:',
    slashes: true
  }));
  //...
}
//...

index.html:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>flash demo</title>
  </head>
  <body>
    embed:<br/>
    <embed src="swf.swf">
    iframe:<br/>
    <iframe src="swf.swf"></iframe>
    webview:<br/>
    <webview src="swf.swf"></webview>
    webview plugins:<br/>
    <webview src="swf.swf" plugins></webview>
  </body>
</html>

重点还是:flash的路径还有plugins的字样。效果演示如下:

苏南大叔:mac 系统,如何在 Electron 上集成 Flash 播放器? - 010
mac 系统,如何在 Electron 上集成 Flash 播放器?(图9-9)

结论

mac和win下面,如果不自定义flash插件路径的话,代码都是一样的。在下一篇文章中,苏南大叔将试图自定义flash插件的路径,欢迎关注相关经验文章哦。

更多electron相关资讯,请点击这里查看。https://newsn.net/tag/electron/

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   mac    electron