Electron 使用Pepper Flash插件

开发 前端
Electron 中支持 Pepper Flash 插件的使用。想要在 Electron 里面使用 Pepper Flash 插件,我们需要手动设置 Pepper Flash 的路径,并且在应用程序中启用 Pepper Flash。

Electron 中支持 Pepper Flash 插件的使用。想要在 Electron 里面使用 Pepper Flash 插件,我们需要手动设置 Pepper Flash 的路径,并且在应用程序中启用 Pepper Flash。

保留一份 Flash 插件的副本

在 macOS 和 Linux 上,我们可以在 Chrome 浏览器的 chrome://plugins 页面上找到 Pepper Flash 的插件信息。插件的路径和版本会对 Election 对其的支持有帮助。你也可以把插件复制到另一个路径以保留一份副本。

[[403167]]

添加插件在 Electron 里的开关

我们可以直接在命令行中用 --ppapi-flash-path 和 ppapi-flash-version 或者在 app 的准备事件前调用

app.commandLine.appendSwitch 这个方法。同时添加 browser-window 的插件开关。例如:

 

  1. const { app, BrowserWindow } = require('electron'
  2. const path = require('path'
  3. // 指定flash路径,假定它与main.js放在同一目录中。 
  4. let pluginName 
  5. switch (process.platform) { 
  6.   case 'win32'
  7.     pluginName = 'pepflashplayer.dll' 
  8.     break 
  9.   case 'darwin'
  10.     pluginName = 'PepperFlashPlayer.plugin' 
  11.     break 
  12.   case 'linux'
  13.     pluginName = 'libpepflashplayer.so' 
  14.     break 
  15. app.commandLine.appendSwitch('ppapi-flash-path', path.join(__dirname, pluginName)) 
  16. // 可选:指定flash的版本,例如v17.0.0.169 
  17. app.commandLine.appendSwitch('ppapi-flash-version''17.0.0.169'
  18. app.on('ready', () => { 
  19.   let win = new BrowserWindow({ 
  20.     width: 800, 
  21.     height: 600, 
  22.     webPreferences: { 
  23.       plugins: true 
  24.     } 
  25.   }) 
  26.   win.loadURL(`file://${__dirname}/index.html`) 
  27.   // ... 
  28. }) 

或者也可以尝试加载系统安装的 Pepper Flash 插件,而不是装运 插件,其路径可以通过调用 app.getPath('pepperFlashSystemPlugin') 获取。

使用webview标签启用插件

在<webview>标签里添加 plugins 属性。例如下面所示:

<webview src="http://www.adobe.com/software/flash/about/" plugins></webview> 

故障排查

我们可以通过在控制台打印 navigator.plugins 来检查 Pepper Flash 插件是否加载 。

Pepper Flash 插件的操作系统必须和 Electron 的操作系统匹配。在 Windows 中, 一个常见的错误是对 64 位版本的 Electron 使用 32bit 版本的 Flash 插件。

在 Windows 中,传递给 --ppapi-flash-path 的路径必须使用 `` 作为路径分隔符,使用 POSIX-style 的路径将无法工作。

对于一些操作,例如使用 RTMP 的流媒体,有必要向播放器的 .swf 文件授予更多的权限。 实现这一点的一种方式是使用 nw-flash-trust。

责任编辑:未丽燕 来源: 今日头条
相关推荐

2022-05-12 11:41:16

开发框架程序

2010-03-01 11:00:27

Linux Firef

2010-07-12 15:51:47

2011-11-17 15:18:50

HTML 5

2020-11-26 06:06:11

Flash

2021-06-22 14:47:19

electronDooring架构

2012-02-02 09:42:58

Chrome 18插件功能

2009-06-11 10:59:07

HTML5Flash插件

2013-05-14 09:50:44

Android开发Flash Build

2019-10-29 09:48:20

ElectronGithub开源库

2009-02-25 13:17:08

2013-05-09 13:45:47

2021-06-30 07:00:07

软银机器人人工智能

2013-11-04 09:35:38

Firefox插件拦截FLASH

2011-12-08 16:58:13

2023-08-29 09:16:53

ElectronForge

2011-09-13 09:49:59

PhoneGap插件

2023-04-24 08:00:00

2011-03-21 10:42:44

Nagios插件

2021-06-22 06:52:46

Vite 插件机制Rollup
点赞
收藏

51CTO技术栈公众号