Flutter Release包界面错乱
最近观察到一个问题 , 普通 Run 构建的 Debug Flutter包一切正常 , 但是 Release 后经常在某些页面 UI 错乱 , 有点类似前端 CSS 丢失时候的表现. 最后发现问题是出在三方插件 screen_util 上
在高版本的 Flutter 中, 在调用 ScreenUtil.ensureScreenSize(); 时需要保持异步执行,否则不能确保执行完成 , 导致使 ...
Linux监听文件变化
此次的需求主要源于之前用 docker 部署 acme 自动更新 SSL 证书时,发现脚本中的重启 Nginx 这一步在容器中无法执行 , 因此这里改为监听宿主证书目录证书文件改变,宿主直接重启 Nginx.
这里是通过 inotify 来实现的 , 首先安装
安装 inotify在 Ubuntu 或 Debian 系统上,可以使用以下命令安装:
12sudo apt-get updatesu ...
Flutter使用protobuf
本篇记录下 Flutter 使用 protobuf
安装Protoc这个不做赘述,直接搜索对应平台下载,配置环境变量
安装 protoc-gen-dart这个是 Dart 的 Protocol Buffers 插件 , 直接全局安装
1dart pub global activate protoc_plugin
然后查看实际路径
1dart pub global list
将对应路径配置环 ...
vscode无法将xxx识别为cmdlet问题
最近在 VSCode 上运行 Rust 项目 ,结果发现在工具内的命令终端无法运行 Cargo命令 , 而在外部打开的却可以. 这里记录下解决办法.
通常是命令终端权限不够的问题 , 可以右键程序->以管理员运行. 但是我这里这么操作后 VSCode 会报错启动不了 . 于是需要另寻他法. 这里转一个光影星宸博客 的解决办法.亲测有效
工作区的问题
先看看你当前的vscode是不是打开了 ...
ESP32 Arduino生产烧录
之前的文章 讲了如何烧录 ESP32 程序. 本篇讲一下如何生产烧录
通常生产使用的使用 , 固件都会有一个唯一ID , 我们这里叫序列号 (SN). 有多种方式可以烧录进去,这里主要讲两种方式
编译时注入这种方式是直接在运行脚本中注入一个唯一ID , 优点是一次注入,终身不变. 缺点是每次烧录都得走编译流程 , 虽然代码没有改变 , 但是还是会重新执行一次 , 速度略慢.
首先修改项目的 p ...
docker-compose安装Emqx问题补充
之前的文章 讲述了如何用 docker compose 部署 emqx 单节点 . 但是在实际试用中会遇到一些问题 ,这里做记录和优化.
问题记录1. 服务器重启后配置丢失
部署后服务可以正常运行 , 但是在服务器重启后 , Dashboard的账号密码 , 还有 API KEY都会丢失 , 重新设置才会生效 , 因此需要优化
__2. __若直接挂载目录,Emqx运行时会直接用到目录中一些配 ...
Docker Jenkins部署Golang项目
之前将 Java 项目在 Docker Jenkins 的参数化构建 . 本次记录下对于 Golang 项目的参数化构建部署
之前部署的方式是 拉取源码 -> build镜像 -> 推送镜像仓库 -> build容器 , 笔者这里起初也采用这种方式 , 但是发现在对 Golang 项目 go build 时服务器会 CPU 内存占用爆满构建失败 , 本台机器对 Java 项 ...
Arduino开发ESP32程序注意点
在重构嵌入式项目中使用了 PlatformIO 开发 Arduino ESP32 .相比于传统的用C语言开发 , 这里 Arduino ESP32 框架的 API 比较简洁 , 用 C++ 也可以更加面向对象编程 , 对于熟悉以往应用层软件的同学更好切入 . 这里记录下一些开发中遇到的细节点.
前言首先大致梳理下项目有哪些功能
蓝牙GATT
WiFI连接
MQTT
LCD TFT屏幕绘制
...
ESP32 PlatformIO固件烧录
最近在重构一款嵌入式项目 , 用 PlatformIO 开发 Arduino 的 ESP32 项目. 在这些嵌入式项目进入生产流程中 , 通常需要去批量烧录 , 这个时候需要去借用一些工具或者脚本去完成
本文大量参考【ESP32之旅】ESP32 PlatformIO 固件单独烧录
准备首先代码编译 , 若成功则会在 .pio/build/{开发板}/ 目录下生成对应的编译文 ...
acme申请更新Let's Encrypt证书
之前更新 Docker安装Let’sEncrypt SSL证书 文章 , 想通过 docker 来申请和更新证书一劳永逸 , 在初次申请完毕时执行更新只会提示过期时间未到 , 暂不用更新 , 可是当三个月证书即将到期时发现更新会报错 , 无法更新 . 如果在生产上解决这个问题就比较麻烦了 , 这里换成 docker 部署 acme 申请和更新 Let’s Encrypt 证书
安装 Dock ...