轶哥

妄图改变世界的全栈程序员。

Win11设置默认浏览器的方法

在win11正式版中,设置默认浏览器的方法被微软修改了,更加精细,以至于一开始我竟没有找到在哪里设置。

以前在win10中,设置默认浏览器只需要进入设置-应用-默认应用,对Web浏览器进行选择即可调整默认应用程序。但是在win11中居然开了个倒车,没有提供这样的默认选项,取而代之的是精细化的默认应用设置。

虽然精细化的设置能够最大程度的把管理权交给用户,但是win10的快捷设置方式也不失为一个值得保留的选项。两者完全可以共存。摒弃简单方案提高了用户切换默认浏览器的难度,在第一次启动Edge的时候不小心点了介绍界面的确定按钮,win11就把默认浏览器设置一键为Edge了,还不晓得杂个改回去,就这实在是有点流氓。

Win11正式版升级安装Docker(基于WSL2)

微软于今日(2021年10月05日)发布了正式版win11。访问Windows 11 安装助手即可下载安装。下载和前期安装过程不会影响系统正常使用,最后的重启安装的过程大概耗时20分钟,和普通更新感觉耗时差不多。

问题描述

从Win10升级到Win11后,当计算机第一次启动时(以及之后的每次),Docker Desktop 将无法启动。Docker Desktop 在 Windows 更新之前运行良好。

每次重新启动计算机或尝试手动启动 Docker Desktop 时,都会出现此问题。

安装win11后Docker运行报错,主要报错内容是Microsoft .NET Framework无法连接xxx,其实就是无法连接到wsl2。

根据Docker官方说明,需要升级到最新的wsl2内核Docker Desktop

苹果磁吸充电宝并不是智商税

MagSafe 外接电池

2021年7月14日凌晨,苹果官网上线新款MagSafe外接电池。官网原价749元。

此消息一出,立刻有不少网友吐槽:“祖传5V 1A充电宝,屁大点容量卖那么贵,完全是智商税”。

然而事实并非如此,苹果磁吸充电宝实则是一个设计上非常优秀的产品。

首先,苹果将此充电宝称为“MagSafe外接电池”,这就说明此产品并非简单的无线移动电源。既然是备用电池,那么就不只是没电的时候用来给手机充电的产品了,这是苹果Smart Battery Case产品线的替代品。

Smart Battery Case

早在2015年,Apple公司就推出了Smart Battery Case(智能电池壳)产品。我们都知道苹果公司很大的优势在于强大的软硬件整合能力,苹果公司借助自身对软件的定制化能力去完善硬件体验。用户使用Smart Battery Case的时候,iPhone 的锁定屏幕和通知中心会智能显示电池状态,它还可以实现在手机充电的同时,交叉为保护壳充电。这是第三方保护壳或者充电宝无法实现的。

在MagSafe外接电池产品的设计上,苹果也采用了类似的方案。通过苹果私有的通讯协议和IOS系统进行通讯,iPhone中可以查看MagSafe外接电池的电量,同时在充电的时候iPhone会自动控制什么时候充手机什么时候充MagSafe外接电池。

Linux/Win/OMV5 安装WebDAV服务

此安装方法通用于所有*unix系统、Windows系统。

在OMV5(openmediavault)中安装WebDAV服务器端的方法不同于旧版本。在OMV5之前的版本,可以直接在管理界面的“插件”中安装并启用WebDAV服务,但是新版本去除了此插件,需要手工进行安装。目前相关资料较为匮乏,网上的WebDAV镜像质量也参差不齐。

通过对比目前较为受欢迎的WebDAV服务器端软件,https://github.com/hacdias/webdav 较为稳定(唯一遗憾的是,此仓库作者提供的Docker镜像竟然在Docker Hub中排名非常靠后,以至于完全搜不到)。

此开源项目是使用GoLang开发的,因此兼容性非常强悍,仅作者预编译针对不同操作系统和CPU架构的二进制文件就有34种,可以说涵盖了几乎所有运行环境。

作者默认使用此软件的都是专业选手,因此没有手把手的文档可以参考。这对于非程序员甚至非GoLang程序员不太友好。

关于JavaScript作用域与函数提升的一道思考题

在某个JavaScript前端群里面,网友深圳-resolve发的一道关于JavaScript作用域与函数提升的思考题引发了众位大佬的讨论。

题目

console.log(a)
if (true) {
    a = 2
    function a () {}
    a = 3
    console.log('内部', a)
}
console.log('外部', a)

执行结果:

image.png

打印a在所有位置的值:

image.png

Win10中通过WSL2开发基于Electron的Ubuntu应用程序

本文将介绍如何在Windows 10操作系统中借助WSL2开发基于Electron的Ubuntu窗口应用程序,可以实现在win10中编写代码并查看linux应用的运行效果。

借助此方法,仅需一台MacOS设备和一台Win10的设备,即可通过Electron开发和测试主流操作系统(Windows、Linux、MacOS)下桌面应用程序并可以有差异化的调用操作系统的原生API。

通过MacOS系统可以编译几乎所有平台的应用程序,例如可以在MacOS中编译Win10 x64Linux ARM64等平台的应用程序。但是在win10ubuntu中无法编译MacOS应用程序(可以借助虚拟机或者带有MacOS系统的Docker镜像实现MacOS平台应用程序的编译,但是可能无法正常进行签名)。关于Electron自动编译及自动更新、分发,可以参阅此视频教程

自助设备广告屏自动播放视频功能实现

接到一个需求,基于Electron开发Windows下的自助设备广告屏(上屏)自动播放视频的功能。设备下屏是带触控功能的屏幕,可以进行业务咨询、业务办理、视频咨询,上屏是不带触控功能的1080P屏幕。

%E8%87%AA%E5%8A%A9%E8%AE%BE%E5%A4%87.jpg 两个屏幕接入了同一个主机,下屏是主屏幕,上屏是分屏(扩展屏)。为了避免下屏进行视频咨询的时候,上屏播放视频的声音影响到对话,因此上屏播放视频功能需要开放相应的API接口,在下屏播放视频或进行音视频咨询的时候,相关的开发者能够通过API对上屏视频禁音。

由于我们已经开发了Android平台的同款设备,因此Electron平台需要和Android平台保持一致的API。

记一次Intel AX201网卡卡顿问题解决

使用一台全新的联想yoga14s(intel版)设备连接了wifi6网络,在安装Symless(一款多设备协同软件)后,发现鼠标移动卡顿,ping内网网关,发现延迟高达60ms,还伴随有断流现象。出现高延迟、断流的同时,蓝牙也会变得卡顿,断开无线网络后,蓝牙功能恢复正常。

网卡设备工作在160MHZ,显示协商网速在1200M附近。使用MacBook和IOS、Android设备测试到网关的延迟是正常的,说明路由器在工作。

  上一页下一页