electron

vue-electron脚手架

巧了我就是萌 提交于 2020-05-07 20:34:12
vue-electron官方文档(中文): https://simulatedgreg.gitbooks.io/electron-vue/content/cn vue-electron官方文档(英文): https://simulatedgreg.gitbooks.io/electron-vue/content/en 1.脚手架搭建流程步骤 # 安装 vue- cli 和 脚手架样板代码 npm install -g vue- cli vue init simulatedgreg /electron-vue my- project # 安装依赖并运行你的程序 cd my - project yarn # 或者 npm install yarn run dev # 或者 npm run dev 2.效果图 注意: (1)环境问题: 可以参考我的这篇文章 VsCode源码编译运行 环境与其保持一致,基本上就不会出什么问题。 (2)包管理工具问题: 关于npm和yarn,两者都是包的管理工具 我用npm install总是在报Error之类的错误,用yarn就好了。 来源: oschina 链接: https://my.oschina.net/u/4358626/blog/3585680

02-Electron环境搭建

半世苍凉 提交于 2020-05-07 19:39:36
一、node 环境(10.0以上) 二、创建项目&安装electron cd Desktop mkdir electron-app cd electron-app npm init -y npm install electron --save-dev 安装electron比较慢,抽袋烟 忍受不了的话,你可以采用yarn或cnpm 检查是否安装成功 npx electron -v ./node_modules/.bin/electron -v 三、启动electron-app // 启动命令 ./node_modules/.bin/electron 如果出现这张图表示你可以开启electron之旅了。 关注公众号: 页面仔小杨 【实战干货、原创分享】 来源: oschina 链接: https://my.oschina.net/u/4513963/blog/4269110

03-Electron打造Hello-World应用

China☆狼群 提交于 2020-05-07 11:51:53
上一节 Electron环境搭建 ,这节我们简单打造一个Hello-World应用 一、修改package.json { "name": "electron-app", "version": "1.0.0", "description": "", "main": "mian.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "electron ." }, "keywords": [], "author": "", "license": "ISC", "devDependencies": { "electron": "^8.2.3" } } 二、创建main.js electron模块提供的功能都公共命名空间暴露出来了。 electron.app管理生命周期( 了解electron生命周期 ) electron.BrowserWindow负责创建窗口 main.js 代码如下: const { app, BrowserWindow } = require('electron') app.on('ready', () => { // 设置打开的窗口大小 let mainWindow = new BrowserWindow({width: 400, height: 400})

上传Markdown文件内的本地图片至博客园

ε祈祈猫儿з 提交于 2020-05-05 12:02:39
上传Markdown文件内的本地图片至博客园 ​ 因为习惯使用Markdown格式做笔记,有时希望将它放到网上方便在任何有网络的地方查找。开始是放到Github中的,但是有时访问的速度太慢了所以准备将笔记放到博客园中,这样访问速度就快了。 ​ 但是使用Markdown写的文件中时不时会有几张图片,上传笔记的时候还要一个一个的去本地找照片,再上传到博客园上。如果说一两张图片还好,但是图片多了,这样重复无聊的动作就会让人烦躁,因此便产生了编写能自动上传Markdown中的本地图片,并自动改掉文章中的链接的程序的想法 ​ 上传图片需要账号信息,但只知道账号密码没啥用,因为不知道上传图片的API接口,而偶然的机会知道了Electron,它可以用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库。 Electron通过将 Chromium 和Node.js合并到同一个运行时环境中,并将其打包为Mac,Windows和Linux系统下的应用来实现这一目的。 ​ 也就是说只要用Eletron编写的程序,然后用它登录账号,程序就能存储其session,再使用ajax上传图片,这样就能自动附带上用户的session,然后就能上传图片了。额大概就这意思,反正我是这么理解的,使用说明如下 程序界面 程序界面如下,仿照PS做的 登陆账号 然后登录一下账号

上传Markdown文件内的本地图片至博客园

梦想与她 提交于 2020-05-05 12:01:20
上传Markdown文件内的本地图片至博客园 ​ 因为习惯使用Markdown格式做笔记,有时希望将它放到网上方便在任何有网络的地方查找。开始是放到Github中的,但是有时访问的速度太慢了所以准备将笔记放到博客园中,这样访问速度就快了。 ​ 但是使用Markdown写的文件中时不时会有几张图片,上传笔记的时候还要一个一个的去本地找照片,再上传到博客园上。如果说一两张图片还好,但是图片多了,这样重复无聊的动作就会让人烦躁,因此便产生了编写能自动上传Markdown中的本地图片,并自动改掉文章中的链接的程序的想法 ​ 上传图片需要账号信息,但只知道账号密码没啥用,因为不知道上传图片的API接口,而偶然的机会知道了Electron,它可以用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库。 Electron通过将 Chromium 和Node.js合并到同一个运行时环境中,并将其打包为Mac,Windows和Linux系统下的应用来实现这一目的。 ​ 也就是说只要用Eletron编写的程序,然后用它登录账号,程序就能存储其session,再使用ajax上传图片,这样就能自动附带上用户的session,然后就能上传图片了。额大概就这意思,反正我是这么理解的,使用说明如下 程序界面 程序界面如下,仿照PS做的 登陆账号 然后登录一下账号

PC端多端融合方案

≡放荡痞女 提交于 2020-05-04 21:15:39
每天都要写第二天的 todoList。有一天在写的时候突然想到,为了让自己清楚知道自己需要做啥、做了多少、还剩多少没做,想写一个电脑端程序,在技术选型的时候就选了 electron。 一、 方案选型 3天时间写了个 PC 端应用程序。先看看结果吧 为什么要选 electron 作为 pc 端开发方案? 史前时代,以 MFC 为代表的技术栈,开发效率较低,维护成本高。 后来使用 QT 技术,特点是使用 DirectUI + 面向对象 + XML 定义 UI,适用于小型软件、性能要求、包大小、UI 复杂度叫高的需求。 再到后来,以 QT Quick 为代表的技术,特点是框架本身提供子控件,基于子控件组合来创建新的控件。类似于 ActionScript 的脚本化界面逻辑代码。 新时代主要是以 electron 和 Cef 为 代表。特点是界面开发以 Web 技术为主,部分逻辑需要 Native 代码实现。大家都熟悉的 VS Code 就是使用 electron 开发的。适用于 UI 变化较多、体积限制不大、开发效率高的场景。 拿 C 系列写应用程序的体验不好,累到奔溃。再加上有 Hybrid、React Native、iOS、Vue、React 等开发经验,electron 是不二选择。 二、 Quick start 执行下面命令快速体验 Hello world,也是官方给的一个

PC 端多端融合方案

我与影子孤独终老i 提交于 2020-05-04 19:22:00
一、 方案选型 3天时间写了个 PC 端应用程序。先看看结果吧 为什么要选 electron 作为 pc 端开发方案? 史前时代,以 MFC 为代表的技术栈,开发效率较低,维护成本高。 后来使用 QT 技术,特点是使用 DirectUI + 面向对象 + XML 定义 UI,适用于小型软件、性能要求、包大小、UI 复杂度叫高的需求。 再到后来,以 QT Quick 为代表的技术,特点是框架本身提供子控件,基于子控件组合来创建新的控件。类似于 ActionScript 的脚本化界面逻辑代码。 新时代主要是以 electron 和 Cef 为 代表。特点是界面开发以 Web 技术为主,部分逻辑需要 Native 代码实现。大家都熟悉的 VS Code 就是使用 electron 开发的。适用于 UI 变化较多、体积限制不大、开发效率高的场景。 拿 C 系列写应用程序的体验不好,累到奔溃。再加上有 Hybrid、React Native、iOS、Vue、React 等开发经验,electron 是不二选择。 二、 Quick start 执行下面命令快速体验 Hello world,也是官方给的一个 Demo。 git clone https://github.com/electron/electron-quick-start cd electron-quick-start npm

有没有人想和我一起编写 Clear Writer 的?

。_饼干妹妹 提交于 2020-05-04 10:54:36
合作内容 程序编写 了解 JS、HTML、CSS 等基础前端技能,了解 Electron 开发。 翻译 熟练运用一门外语(中文英文除外),书面表达过关。 报酬 在 Github 上本项目里面的 README.md 上、Clear Writer 的“关于”屏幕上以及每次新建文件时出现的文档里面看到你的名字。 薪金:0。 有意向者请联系 lhp@linhongping.onmicrosoft.com 。 来源: oschina 链接: https://my.oschina.net/u/4376318/blog/4263990

关于rtsp转码rtmp播放的两种方式,客户端直接转,远程服务器转

走远了吗. 提交于 2020-05-04 04:44:27
需求 一、场景 用户多家门店有监控探头,设备是海康的和大华的。用户总部和门店不在一个网络下,并且总部要能实时调用查看门店监控,和门店回放画面。我们知道监控摄像机获取的视频是 rtsp 流的格式。 只能在特用的软件中播放,并且只能在相同的网络下播放。用户要求开发一个管理软件根据业务需要来播放视频。最终的目地是要把rtsp 流视频 转换为能在浏览器,手机等主流的播放渠道上能播放的视频(rtmp,mp4,flv,m3u8等格式); 解决办法 (1)、客户端转码 我们用electron 来打包客户端,客户端中安装一个在线转码ffmpeg 模块,这个模块中有功能接口能直接对rtsp 进行转码(这种场景主要给 播放软件和门店在一个网络下能直接连接的场景); 用到两个模块 “fluent-ffmpeg” “node-media-server” fluent-ffmpeg 转码模块 我们用这个模块转码为rtmp 直播流,转码后推送到一个我们在软件内部搭建的一个rtmp 直播流服务器地址 “ rtmp://localhost:1938/live/livestream” node-media-server 模块做rtmp直播流服务器 上面的fluent-ffmpeg 模块转码推送rtmp 流到这个服务器 rtmp://localhost:1938/live/livestream,

electron/nodejs实现调用golang函数

佐手、 提交于 2020-05-02 19:37:41
https://www.jianshu.com/p/a3be0d206d4c 思路 golang 支持编译成c shared library, 也就是系统中常见的.so(windows下是dll)后缀的动态链接库文件. c++可以调用动态链接库,所以基本思路是golang开发主要功能, c++开发插件包装golang函数,实现中转调用 对于类型问题, 为了方便处理, 暴露的golang函数统一接受并返回字符串, 需要传的参数都经过json编码, 返回值亦然. 这里实现了3种调用方式, 同步调用,异步调用和带进度回调的的异步调用.应该能满足大部分需求 参考 golang cgo支持: https://golang.org/cmd/cgo/ 实现 不多说直接上代码, 相关说明都写到注释中了 golang部分 // gofun.go package main // int a; // typedef void (*cb)(char* data); // extern void callCb(cb callback, char* extra, char* arg); import "C" // C是一个虚包, 上面的注释是c代码, 可以在golang中加 `C.` 前缀访问, 具体参考上面给出的文档 import "time" //export hello func hello (arg