肇鑫的日常博客

肇鑫 / Owen Zhao

独立开发者,主要开发 iOS、watchOS、macOS 应用。

目前在维护 SleepTapRooster Time,以及 Markdown Writer 相关工具。

最新文章

击音耳挂式蓝牙耳机新旧版对比

评测

因为钱真的没法省出来吗?的原因,我的2023年买的蓝牙耳机坏了,于是又买了一个新版。今天新版到了。我打算看看和旧版比有什么变化。

外观

我特意选择了相同的颜色。因为可选的另外一个颜色是黑色,我觉得太过平常了。二者的外观基本上一致,只有几处略有不同。

外观一致性提升

如图,下方新版的颜色更加对称了。圈中的部分原来是杂色的。新版已经是同色的了。这样左右两边的颜色就一致了。

IMG_20250817_094629

文字大小和颜色深浅略有变化

如图,左右两边外侧有“Powersport”的字样。旧版的字体较小,文字和图标的颜色更深,并且sport是额外加黑的。新版的字体变大,文字和图标的颜色变浅了,并且“Powersport”的颜色是相同的。

IMG_20250817_094732
IMG_20250817_094717

参数

旧版是蓝牙5.3,内置64G存储。新版是蓝牙6.0,内置32G存储。

使用感受

感觉新版的音质好了不少。另外,新版和旧版在耳机的蓝牙里显示的型号是一样的。另外,旧版的充电线可以用在新版上。

钱真的没法省出来吗?

随笔

听说过一个很玄学的说法:说是该花的钱得花,因为就算你费劲心思省了一下,也马上会通过另一种方式花出去。

这种事我也遇到过,而且就在昨天。昨天天气是中雨,雨会时不时的下。中午的时候,我从外面回家。原本想要打车,结果平时出租车蛮多的,昨天一辆没有,需要等一下。再加上当时雨没有在下,而且我骑电动车回家也仅仅需要10分钟,于是我就心存侥幸,扫了一辆电单车。

当是想的是这样就省下了10元的打车费。结果骑到三分之一就开始下了毛毛雨,骑到一半就下大了。几秒钟衣服就全透了,鞋里也全是水。我想,算了,骑到家再说吧。到了家。我把衣服都脱了,放在卫生间的洗脸池里,打算用洗衣机给洗了。然后从双肩包里拿出来手机和耳机。结果我看到耳机上粘了个东西。我还想这是从哪里吸到了个小磁铁?仔细一看,原来是耳机上的听筒因为泡水开胶了。

咨询了一下豆包,我该买个新的还是拿胶水粘上?豆包建议说还是买个新的吧。于是我跑去京东选了个颜色一样的。新的蓝牙升级到了6.0,不过对于我来说没啥区别,毕竟我也没有蓝牙6.0的设备。

换新耳机需要125元。

erji

顺便说一句,豆包P图还是挺好用的。照片上有两根头发,我让豆包去掉,结果很完美。

用Mac mini替换掉Apple TV后的一些感受

技术

我有一台Apple TV HD,也就是最高支持1080p的那款。一直以来用得还可以。我主要是用Airplay转播Mac mini上播放的内容。

今年我趁着国补,将Mac mini M1换成了Mac mini M4。新问题随之而来。在使用5G频段连接Mac mini M4和Apple TV之后,Airplay的视频,声音会断断续续的。而这个问题在原本的Mac mini M1的时候是没有的。

根据我的分析,应该是M4的Wi-Fi支持160Mhz,而Apple TV不支持导致的。我也找到了解决办法。M4 Mac mini连接Apple TV HD声音断断续续问题的一种解决方案

上面的办法虽然能一定程度解决问题,但是每次开始的时候还是会卡顿一段时间才会正常。而且声音的稳定性特别容易受干扰,只要有人在路由器和Apple TV直间走动,就经常要卡上一段时间。

M1换下来了之后,我本来打算当二手卖掉。但是现在M4的价格实在太低了。M1卖不上价,我觉得不划算。于是打算留下来自己用。首选就是替换掉Apple TV,彻底解决掉声音断断续续的问题。

M1的准备配置

要实现M1的远程控制,要打开M1的屏幕共享。这样,就可以在M4上直接登录M1的电脑。另外,建议M1的文件共享也打开,可以方便互传文件。最后,在能耗里,打开“唤醒以供网络访问”,这样就算它睡眠了,也可以通过M4来唤醒它。

M1和Apple TV的不同之处

具体使用起来,M1还是要比Apple TV麻烦一些的。虽然都是通过HDMI连接的电视。但是Apple TV可以做到睡眠时也可以在Airplay中出现,选择之后就会被唤醒,可以直接使用。但是M1必须先打开电视,然后再Finder中选择M1的主机,选择屏幕共享,之后才能在Airplay看到它。

别的倒是没啥了。M1在Airplay的时候可比Apple TV稳定多了。不仅连接迅速,而且很稳。关机的时候,直接关电视就可以了。M1会在一定时间之后自动进入睡眠。

macOS时间机器恢复指南(最新版)

技术

写作缘由

今天我尝试升级到macOS 26 beta 2,但是发现有一些必用的应用不支持,只好通过时间机器退回旧版。但是在恢复的过程遇到了多个问题,这在之前的恢复时都是不存在的。因此打算记录一下,算是为后来者踩坑了吧。

正文

苹果官方文档

根据苹果的官方文档,开机时长按10秒电源键,就会进入恢复系统,然后可以在其中选择时间机器恢复。

但是这个说法只对了一半。即开机时长按10秒电源键,的确会进入恢复系统。但是恢复系统并不能通过时间机器恢复。你选择时间机器恢复之后,会提示你,需要使用迁移助手进行恢复。

实际上,现在恢复系统并不能直接恢复时间机器的备份了,必须先安装对应的系统,然后才能通过迁移助手恢复。这增加了步骤和时间,是一种倒退。

正确的恢复步骤

  1. 关机状态下,按住开机键10秒,进入恢复界面。
  2. 选择磁盘管理,格式化你要安装的macOS的磁盘。
  3. 自动重启后,自动进入恢复界面,选择安装macOS,这会安装你的机型对应的最新版稳定版macOS。
    1. 如果你想安装其它版本,可以提前制作对应的优盘,然后从优盘启动。
  4. 重启之后,进入系统,然后选择从时间机器恢复。

其它问题

以下的内容十分重要,务必要在执行所有操作之前就考虑到。

之前的时间机器恢复的时候,会列出可以恢复的所有时间点。这是因为macOS只能恢复相同版本的备份。当前版本的macOS(15.5),做了一些改进,但是引入了更多的不方便。

当前版本,时间机器可以跳过小版本的不同进行恢复,比如15.5可以恢复15.6 beta的备份。但是如果最新的备份是跨越大版本的,就会直接提示无法恢复,而不是列出所有的可以恢复的时间点。

解决办法

将包含时间机器备份的移动硬盘插入一台可用的macOS,然后进入Finder。删除掉新版的备份的时间点对应的文件夹,只留下旧版的作为最新的时间点。然后重新插回需要恢复的Mac。

捞女游戏点评

随笔

花了一天半时间,总计11.6小时通关了这个游戏的全部结局。我可以负责任地说,虽然这个游戏讲的是捞女,但是却完全没有贬低捞女。

虽然存在凤凰社这个捞女组织,使用变凤凰的方式招捞女,培训捞女。但是具体到每位女性本身。却有着不同的身份背景,她们有的是遇人不淑,被渣男欺骗,被父母抛弃,被丈夫家暴,还有的只是为了寻找一份属于自己的爱情。

而捞女之上,还有权力阶层。凤凰社创办人虽然身为女性,但是她创办凤凰社的目的却并非为了帮助女性,而是借助女性敛财,以及提供性贿赂给权力阶层,从而获取自己的非法利益。而凤凰社对于捞女也存在压榨。她们培训捞女前需要为捞女培训和整容,而这些费用要由捞女自己出,有潜力的她们会借一部分。但是如果不够或者是潜力低的,就需要自己去贷款来上课、整容。而贷款就是那种裸贷的形式。如果今后钱没还清也骗不到钱,就会拍去色情部门去服务男人来还钱。一旦你想退出,她们就会拿之前拍到的你的隐私来威胁你。

而且这个游戏虽然有捞女,有捞女组织,有打击捞女的团队。但是这里面即便是所谓的反派,三观也都是正的,做坏事的人也会心存愧疚,有机会也会想做一些好事。这也是为什么玩家可以正常地和她们沟通,从而从情感上改变她们。如果她们的本质是邪恶的,那么犹豫三观不同,这个游戏过程最终就没法进行下去了。

总结起来,游戏起名叫捞女游戏,本质上是为了博眼球,吸引大众的注意。而他们也的确做到了。改名后的情感反诈模拟器反而更加贴切。

最后,期待团队承诺的销量超过37万份后,提供的4K视频的更新。

你和AI之间存在利益冲突

技术

大模型,以下简称AI。目前在辅助编程方面十分流行。不过在我使用过多个不同的类似工具,包括并不限于Github Copilot,AlexSideBar,通义灵码等,之后。我发现了一个有趣的现象。

在解释这个有趣的现象之前。我想先向某些不熟悉AI编程的读者简单介绍一下AI编程的大致过程。

  1. 开发者使用编辑器将开发的项目打开。
  2. 选择用来询问、作答的AI模型。
  3. 提出具体的问题,同时还要划定范围,比如说是单独的某个文件,又或者某几个文件,又或者全部文件。(有些比较智能的客户端会主动扩大范围,这个暂不讨论)
  4. 等待AI分析、作答。
  5. 开发者对比AI的代码和原始代码,评估是否解决了提出的问题。如果解决,就可以跑一下测试看看。如果没解决,那就针对不足的地方重新提问。
  6. 以此反复。

分析

经常有人说某某AI编程工具特别牛,就是token用得太狠了。充上100美元,一天就用光了。那么,如果我们想减少token的用量,我们一起看看上面的6个步骤有哪些可以进行优化,以减少用量。

首先排除1和4、5和6。要想减少token的用量。主要看2选择的模型,和3提出的具体的问题,以及划定的范围。

但是2这个可以选择的范围不大。因为每个人都有各自的偏好。有的人觉得Claude Opus最牛,有的人觉得Gemini Pro最强,当然也有人更偏好OpenAI O3的。所以,这个主要是个人便好,而不是token消耗。

因此主要的问题就在与步骤3。抛开你和AI对话的那几段文字。划定的范围是最重要的,选择单一文件或几个文件,相比于直接扔整个项目给AI,让它自己选,消耗的token数量肯定不是一个数量级别的。

那么我们要如何优化步骤3呢?首先,我们发现每次发送文件给AI时,AI都是当作是全新的在解析,也就每次都要消耗新的token。理论上,如果我们可以每次把内容分成不变的和已经变化的发给AI,然后让AI处理变化的部分,就可以节省大量的token。而且,由于我们大部分时间都是接受了AI给出的方案。那么AI实际上并不需要重新理解当前的代码。如果它确定用户接受了它的方案,它只需要将它上次输出的结果的token直接拿过来作为输入就可以了。

如果厂家可以做到我上面提出的这个优化,那么我们理论上最高可以节省接近一半的token。但是厂家应该没有动力去做这个优化。因为在这个问题上,厂家、AI、开发者的利益是不一致的。

  • 对于AI来说,直接使用结果的token来作为输入的一部分是有益的,因为提高了效率。
  • 对于开发者来说,更是有益的,因为可以省钱。
  • 但是对于厂家来说,用户省下的钱,就是他少赚的钱。因此,虽然厂家一再强调AI的普及需要大量的电,但是他们却没有动力去主动帮用户节省。他们只会在内部帮自己节省。

结论

很有意思吧。在提高效率,节省token这方面。厂家和AI、开发者的利益是不一致的。这极大地阻碍了AI的更快发展。AI崛起吧!先干掉厂家!

Safari登录时非常卡顿问题的解决

技术

一直用通行密钥登录。可是最近突然用不了了,会界面一直卡住,只能通过密码的方式来登录。

我尝试了常规的办法,比如清空Safari的数据。没有作用,然后我又尝试打开密码应用,删除掉一些过期的密码。还是没有作用。

我注意到spindump在这期间CPU占用会达到100%,我问了AI,AI说这个是Spotlight的工作进程,只要不一致100%,能自动恢复正常就没问题。于是我就放弃了这个线索。

这么将就用了两天,今天在浏览X的时候,看到有人提到自己为了追一个bug,把系统日志喂给AI,让AI逐一排查。我一想,这是个好主意啊。于是我又开始研究这个问题。

正式研究

我先打开控制台应用,然后点击开始。我一开始过滤的是Safari的日志,但是把错误和故障的日志发给AI后,AI的答案没啥用。

于是我又把日志范围扩大到我操作期间的所有系统日志,结果发现了一个这样的故障。

AuthenticationServicesAgent	
Failed to acquire lock for -[ASCAgent cancelCurrentRequest]_block_invoke

但是AI对于这个问题也没啥好办法。

于是我取消了日志所有的过滤器。结果看到满屏的Spotlight的日志。于是我禁用了SpotLight的索引。然后再试,结果还卡。重启,不卡了。

结论

用户在登录时,会先调用密码应用查询用户名,然后通过密码或者通行密钥登录。在这个过程中,会卡顿几次:

  1. 查询用户名时卡一次。
  2. 选择用户名时卡一次。
  3. 选择通行密钥登录时一直卡。

也就是说,1和2时遇到了缓慢的问题,而3遇到了没有查询结果的问题。

而每次遇到这种情况,macOS的处理方式,就是使用Spotlight重新对于相关内容(密码应用的数据)进行索引。这进一步造成了卡顿。

建议的解决步骤

router

禁用Spotlight的方法

将系统和用户自身文件夹所在的磁盘分区,加入到Spotlight的搜索隐私。恢复则移除即可。

遇到骗子啦,想骗我两万五。

随笔

昨天微博显示有新人关注了我,看ID很像我大学同学的之前的微博ID,于是我在微信上问她,是不是新建了一个微博账号,她说是。于是我就互关了那个账号。

今天下午,那个账号和我发微博私信。说是今天真不顺,跑去营业厅办业务,结果被工作人员不小心把手机号给注销了。现在所有App都用不了了。

然后有让我帮她查一个亚马逊的订单,说是昨天定了个包包。想要看一下订单状态。我帮她查了状态。

step_1.mm

然后,过了一会儿,她又和我说,她的网银无法付款,让我再次询问客服,结果客服说可以代付。然后她就和我说让我待付,她付钱给我。

step2

我给我那个同学打电话,提示正在通话中,又大了两次,接了,问她是否在微博上和我对话,她说没有。于是我拉黑了骗子的账号。

之后我截图和骗子的对话,发给我同学的微信。然后我和她微信语音对话。她说那个微博账号不是她的,然后给我截图她不小心新建的账号,用户名是随机的那种。但是她的确是新建的微博账号,是前天微信不小心登陆造成的。我说我问你是不是新建了账号,肯定是因为关注了我我才知道啊。你新建的账号根本没关注我。她说我还奇怪呢,怎么知道我新建了账号,怀疑你是个高手。