上周咱们公布了 Flutter SDK,本周咱们来讲讲 Electron Demo 源码。Electron是由Github开发,是一个用 HTML、CSS、JavaScript 来构建桌面应用程序的开源库,能够打包为 Mac、Windows、Linux 零碎下的利用。在线上教育、视频会议等行业场景下,桌面端开发都是刚需,然而从0开始构建一套蕴含实时音视频和互动白板的云课堂或视频会议软件,须要破费很多工夫和人力。拍乐云Pano开源了 PanoVideoCall(以下简称PVC)的 Electron Demo源码,企业开发者可开箱即用,疾速打包上线

一、丰盛的性能

本次 Pano 开源的 PVC Demo 客户端反对丰盛的性能,可同时满足视频会议和1对N云课堂需要。客户端集成Pano高清实时通信sdk,可间接开启高性能音视频通信,反对桌面共享;同时集成Pano互动白板,实现根本的轨迹同步性能,还反对视角追随、文档转码、动静课件和激光笔等其余丰盛的性能,可能满足会议合作、白板教学等多种场景。

二、多平台反对

本次 Pano 开源的 PVC Demo 客户端基于Electron,我的项目代码齐全应用Javascript编写,前端开发同学即可对接,无需 Native 开发,同时反对打包到Windows和macOS,大大降低了开发和保护的老本和难度。开源我的项目中曾经做好了 Windows 和 macOS 的打包配置,开箱即用,可间接运行打包命令打包到对应平台。

三、我的项目应用介绍

1、依赖装置

下载好我的项目代码之后,cd 到 Electron/PanoVideoDemoVue 目录,执行 yarn 或者 npm install 装置我的项目依赖(国内装置Electron 可能会比较慢,我的项目中曾经将下载源指定为 taobao 源)

2、编译运行

间接在我的项目目录运行yarn dev 或者 npm run dev 启动我的项目

应用Mac 的开发者留神不要间接在 VSCode 集成的 shell 中执行,须要应用零碎的 shell 或者 iTerm 等运行指令,否则运行进去的利用将无奈弹出权限申请框导致解体

3、设置appId和账号信息

步骤 2 胜利运行后会主动生成如下的 app 界面弹出:

填入appIdtokenchannelIduserId 等即可开启通话。如果你还没有账号,能够进入拍乐云控制台页面(https://console.pano.video/#/user/register),依据领导创立拍乐云账号,再进入利用治理页面创立一个新的利用,取得 AppID,并生成 token。利用运行截图:

4、配置ICON、利用名称等

咱们曾经贴心地把 icon 指定到了 apppico 目录,开发人员只须要替改目录下的资源即可,.icns为macOS 图标资源文件 ,.ico 文件为 Windows 图标资源文件,利用名称批改可通过批改 package.jsonproductName字段实现。

5、打包签名和公证

我的项目中曾经做好了打包的配置,间接运行命令即可实现打包:

  • npm run pkg:win 打包 Windows 平台安装包
  • npm run pkg:mac 打包 macOS 平台安装包

签名和公证:

  • Windows 平台签名须要 pfx 文件
  • macOS 平台签名须要应用 DeveloperID 证书,打包之后须要 公证(notarize) ,我的项目中曾经做好配置,须要在公证的脚本中补充 app 相干的信息和开发者账号以及短明码

上述配置信息均寄存在 vue.config.js 中,并做了相应的正文,帮忙你轻松上手。

结语

以上 PVC Electron Demo 源代码均开源,你能够在咱们Github进行下载和体验:

https://github.com/PanoVideo/PanoVideoDemogithub.com

关注拍乐云Pano的知乎号,咱们将为大家分享更多对于跨平台开发的教训,以及基于 Pano SDK 的具体开发教程。