上周咱们公布了 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 界面弹出:
填入appId
,token
,channelId
,userId
等即可开启通话。如果你还没有账号,能够进入拍乐云控制台页面(https://console.pano.video/#/user/register),依据领导创立拍乐云账号,再进入利用治理页面创立一个新的利用,取得 AppID,并生成 token
。利用运行截图:
4、配置ICON、利用名称等
咱们曾经贴心地把 icon 指定到了 apppico
目录,开发人员只须要替改目录下的资源即可,.icns
为macOS 图标资源文件 ,.ico
文件为 Windows 图标资源文件,利用名称批改可通过批改 package.json
中 productName
字段实现。
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 的具体开发教程。