Electron不得不知的几个基础理论知识点

经过前面对Electron简短的接触,进行了以下几个理论知识点的总结,因为感觉如果事前先弄明白这几点的话,对接下来Electron的学习及使用将会大有裨益。

Electron是什么?

Electron 是一个由Github开发、使用 JavaScript, HTML 和 CSS 等 Web 技术创建原生程序的框架,它可以帮助你实现构建跨平台(Mac、Windows、Linux)的桌面应用程序。

进入阅读→

Electron应用在macOS摄像头、麦克风访问崩溃问题解决方法

对Electron应用进行签名打包后,在Mac端发现调用摄像头、麦克风的时候应用会直接崩溃,而之前打的没有经过签名的包是没有问题的。 后来查找资料发现是权限申请的问题。

以下内容转载于: Electron App 在 MacOS 下 申请摄像头及麦克风权限踩坑指南

macOS 10.14 及以上版本,开发者必须对其自己的应用明确授予麦克风、摄像头权限。否则无法调用系统的摄像头、麦克风。如想见详情,可见: Requesting Authorization for Media Capture on macOS

进入阅读→

Electron应用在macOS下公证方法

在一顿猛如虎的Electron签名操作后,打出来的包发送给他人进行测试时,发现别人安装不上🙄(自己的电脑是没问题的,之前安装过未签名打包出来的应用的电脑也是没问题的,必须是一个之前未安装这个应用的电脑才会复现)。。。 提示如下:

而在签名前虽然也是有问题的,它会提示***“打不开“XXX”,因为它来自身份不明的开发者”*,但是至少通过设置是可以安装成功的。 可以去设置->安全与隐私->通用栏目下面点击仍要打开**,或者设置安装选项为允许任何来源(如果没有该选项可以在终端中执行sudo spctl --master-disable

但是现在的这个提示问题,以上设置都没有用,是因为从MacOS 10.14.5开始,App都要进行公证(Notarization),否则将触发苹果的Gatekeeper,阻止用户安装你的App。这意味着,除了对 App 进行签名,还需要对其进行公证。

进入阅读→

Electron-Mac应用的签名步骤说明

最近随着项目功能的逐步完善,准备发布正式版本,在发布正式版本之前,考虑到用户后续版本更新的问题,所以要给Electron应用添加版本更新的功能。 由于应用在Mac端自动更新时需要进行身份验证等,所以前提条件就是要先给应用进行签名。

当然,应用不签名也是可以打包成功的,可以在执行打包命令前执行:

export CSC_IDENTITY_AUTO_DISCOVERY=false
进入阅读→

总有你不知道的8个/组函数/宏

  1. clojure.set/map-invert 有没有想吧map的key和val倒置过来?
(clojure.set/map-invert {:a 1 :c 2})
  1. clojure.set/projectclojure.set/join 可以实现表连接操作.
进入阅读→

怎么避免在代码里搞飞机✈

假如说一个页面按钮点击的时候需要做如下5个检查, 每个检查会报告不同的错误msg.

(defn- valid1? [m]
  (->> m ...))

(defn- valid2? [m]
  (->> m ...))

(defn- valid3? [m]
  (->> m ...))

(defn- valid4? [m]
  (->> m ...))

(defn- valid5? [m]
  (->> m ...))

我们最常见的写法: 逐层嵌套的if语句, 代码的形状是一个典型的大于号 >. 貌似一架飞机.

进入阅读→

Clojure语言入门系列视频

01-课程介绍

02-环境搭建

进入阅读→

程序员清理Mac电脑: 怎么样从Library拿回100个G

空间不足

更新xcode时候发现磁盘空间不够(尽管我还有33G的剩余空间).

发现1. 清空回收站 2. 卸载掉不用软件 3. 删掉大文件 并没有什么帮助

进入阅读→

raspberry(linux), clojure (websockt), emacs (cider), (pythoy ble, serial, opencv), etc.

系统架构

  1. 树莓派端: 作为设备管理器, 开机时候通过websocket和服务器建立连接, 汇报状态
  2. 服务器端: 一方面为client提供rest接口, 另一方面通过websocket和树莓派通讯, 监控状态, 下发命令, 调用硬件
                                +--------------------+
                                |       client       |
                                +---------+----------+
                                          |
                                          |
                                          |restful
                                          |
                                          |
                               +----------+----------+
                               |                     |
                               | web/socket-server   |
                               |                     |
                               +----------+----------+
                                          |               websocket
       +----------------+-----------------+---------------+-------------------+
       |                |                 |               |                   |
       |                |                 |               |                   |
  +----+-----+     +----+----+        +---+----+     +----+-----+       +-----+----+
  |   pi     |     |   pi    |        |    pi  |     |    pi    |       |   ....   |
  +----------+     +---------+        +----+---+     +----------+       +----------+
                                          | ble
                               usb        |      com
                      +-----------------+ | +----------------+
                      |  usb cameras    +-+-+  height detect |
                      +-----------------+ | +----------------+
                                          |
                                    +-----+------------+
                                    |    mi   scale    |
                                    +------------------+
进入阅读→

org-mode agenda

设置文件列表

在emacs的配置文件中增加

(setq org-agenda-files (list "~/sandbox/rc/rcpubdoc2/早会/record.org"
                             "~/sandbox/rc/learn-clojure/introduction.org"))
进入阅读→