[好物分享] 米家胶囊咖啡机💊☕️

背景

小时候跟父母去外地游玩,有一次酒店内的mini bar看到了一台奇怪的机器,机器旁边还放着一些杯子状的小药丸。出于对小物件的好奇,我第一次接触到了胶囊咖啡机。当时我的对于咖啡的认知还停留在包装速溶咖啡,通过胶囊做出一杯咖啡的体验是我大受震撼🤯,给我留下了很深的印象,至此之后我就把胶囊咖啡机放进了我的愿望清单里了。不过当时(2012年前后),Nespresso才刚刚进入中国市场,入门款都要上千块钱,对于那时候的我来说实在是承担不起。(虽然现在也是贵的离谱,但好歹现在有了闲鱼可以买二手)因此购入计划就被搁置下来了。

购入咖啡机

某一天晚上刷淘宝的时候,无意间我留意到米家也有自己的胶囊咖啡机了,一番了解后才知道是心想胶囊咖啡机的米家定制版,我还在愁到底要不要试一下呢?后面看大家的测评才知道,原来还兼容Nespresso胶囊系统,着实让我感到惊喜。恰逢今年元旦的时候,小米商城开启了新年的促销活动,原来399元一台的米家胶囊咖啡机,降价到了379元,于是乎果断剁手购入。

开箱试用

咖啡机本体

小米快递很快,下单的第三天我就收到货了。包装内包含了两部分:

  1. 咖啡机本体(上图)
  2. 两盒试用胶囊(心想系统与Nespresso系统)

咖啡机本体是米家祖传的灰白配色,简洁大气,十分百搭,放厨房里一点都不突兀。咖啡机通过220V供电,电源线不可拆卸。第一次使用的时候需要现在机器后部的水箱中加入适量的纯净水,之后连按两次110ml的按钮,对机器水路进行清洁🧹,之后方可使用。日常使用非常简单,仅仅需要将胶囊(下图)放到机器里,点击对应的杯量即可制作。通常做一杯Espresso(意式浓缩咖啡),仅需要10秒左右,Lungo(长杯咖啡/美式咖啡)则需要30秒左右。另外水槽是可以变更高度的,用以适配不同的杯子高度。制作咖啡的噪声不是很大,嗡嗡嗡的类似空调外机启动的声音,由于持续时间很短,因此不用太过担心扰民,隔一堵墙就没事了。

官方的试用胶囊(深烘,很拉垮)

从开机预热(30秒),到开始制作(15-30秒),到洗水槽(60秒),喝上一杯还算不错的咖啡仅需要不过3分钟的时间,实在是很不错了。早上来一杯,特惬意,大幅度提高幸福感。如果看到这里的你,居住在北方城市,空气较干燥的话,甚至不用像我一样,每天倾倒废料盒(把用完的胶囊丢掉);干燥一点的环境,每周洗一次就好了。这样子甚至可以节约60秒,每天60秒,一个月就30分钟了。

咖啡胶囊成本

由于Nespresso咖啡胶囊系统已经存在了非常多年,同时雀巢作为Nespresso的母公司,一直在为其推广。所以官方所能提供的胶囊,相较其他的纯咖啡胶囊系统(DOLCE GUSTO 多趣酷思等咖啡饮料不做讨论,毕竟咖啡饮料有自己的玩法,饮料会侧重于花样,所以会有很多奶茶、热巧克力之类的选择),比如illy、Tassimo、Lavazza等会有更多口味,更不用说Nespresso胶囊专利已经到期,现在大家都能做Nespresso胶囊。副厂胶囊百花齐放,一抓一大把,甚至前面提到的三家拥有自己咖啡胶囊系统的厂家都为Nespresso专门推出了自家的咖啡。因此单杯咖啡的成本并不高,比如官方的普通咖啡系列,3.8-4.2元一颗胶囊,限定款6-15元不等。通常我们选择3.8-4.2元的胶囊作为口粮就足够了。对于我而言,我一天通常要喝两颗,上午一杯Espresso下午一杯美式,一天的开销也就是8-10元不等。相较于瑞幸咖啡、星巴克等咖啡还是会更加省钱的。更不要说副厂的了,可以通过较低的价格喝到更多口味,我甚至有看到SOE(单一产区)的胶囊,准备下次买来试试看。

PS:SOE这种咖啡豆主要是喝的产区味道。平时的咖啡豆是通过不同产区的咖啡豆混杂,获得的一个大众接受度高的味道,优势是苦度和酸度都拿捏的非常好,比较好入口;缺点就是太平淡了,没啥特别的😂。因此选择SOE更多是为了更多的风味,比如花香水果香巧克力焦糖等味道,如果你觉得为啥要在咖啡里找这些味道,喝果汁不好吗?那么你可以简单的理解成,人们是为了偏酸一点或者偏苦一点。而这些芳香物质只是在追求酸度和苦度过程中的副产物而已。通常焦糖和巧克力味会跟苦一点的咖啡相关联;水果香或者花香的话会跟酸一点的咖啡相关联。

我买了什么胶囊?

我买了两个口味的胶囊,都是看网上测评买的:

  1. 灵感之源-佛罗伦萨阿佩奇欧咖啡
  2. 上海大杯咖啡
灵感之源-佛罗伦萨阿佩奇欧咖啡
甚至买了个比赛用的加厚Espresso杯子来喝咖啡,逼格拉满😂

风味主要是:莓果香和可可香,个人喝下来感觉可可香会更重一点,醇厚的味道(简单理解就是苦),已经作为我的早餐Espresso用了。(风味这种东西,因人而异,建议还是直接入手所有口味喝个遍,挑个喜欢且便宜的就好)

上海大杯咖啡

上海大杯咖啡是用来做Lungo的,所以会比较稀,类似美式咖啡,比较好入口,因此现在已经作为我下午的口粮咖啡了。风味是偏酸一点的果香味道,好入口,喝完无负担。

最后

接下来等把其他胶囊喝完,我就买别的口味的胶囊,挑一个我喜欢的长期喝。如果你也喜欢咖啡,但苦于身边没咖啡店或者咖啡太贵不能天天喝,建议你入手试试看,真的能够省钱提高生活幸福感的。

[SQL] 如何获取昨日每个小时的记录数量?

方法

利用左连接来实现逐小时查询(终于把数据库原理学到的知识用上了😂)

select a.click_date,ifnull(b.total,0) as total from (
SELECT date_format(date_sub(curdate(), interval 1 HOUR),'%Y-%m-%d-%H') as click_date 
union all 
SELECT date_format(date_sub(curdate(), interval 2 HOUR),'%Y-%m-%d-%H') as click_date 
union all 
SELECT date_format(date_sub(curdate(), interval 3 HOUR),'%Y-%m-%d-%H') as click_date 
union all 
SELECT date_format(date_sub(curdate(), interval 4 HOUR),'%Y-%m-%d-%H') as click_date 
union all 
SELECT date_format(date_sub(curdate(), interval 5 HOUR),'%Y-%m-%d-%H') as click_date 
union all 
SELECT date_format(date_sub(curdate(), interval 7 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 8 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 9 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 10 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 11 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 12 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 13 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 14 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 15 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 16 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 17 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 18 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 19 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 20 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 21 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 22 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 23 HOUR),'%Y-%m-%d-%H') as click_date
union all 
SELECT date_format(date_sub(curdate(), interval 24 HOUR),'%Y-%m-%d-%H') as click_date
) a 
left join (
select date_format(createTime,'%Y-%m-%d-%H') as datetime, count(*) as total from `order` where  `status` = 2 group by date_format(createTime,'%Y-%m-%d-%H')
) b 
on a.click_date = b.datetime

infull用于字段的补0,在无数据的时候可以补上0。

dateSub用于减去时间戳的时间

a主要是用来生成逐小时的时间字段

b主要是查询数据

on是用来执行left join的条件

如何在Sequel Ace中快速创建CreateTime与UpdateTime?

前言

本文章主要记录个人的开发经验,产生自最近进行的后端开发。

方法

1.切换到”结构”Tab

2.添加新的字段

3.UpdateTime字段设置为”TimeStamp”, 设置Extra为”on update CURRENT_TIMESTAMP”

4.CreateTime字段设置为”TimeStamp”, Default设置为CURRENT_TIMESTAMP

CURRENT_TIMESTAMP是MySQL自带的一个时间函数,用于生成当前的时间戳”2022-01-05T08:37:17.000Z”。

on update CURRENT_TIMESTAMP表示字段在更新时更新为当前的时间戳。

通过这样子的设定,可以将创建时间和更新时间的操作交由数据库处理,免去了开发者在后端进行额外的处理。

前端如何处理?

new Date("2022-01-05T08:37:17.000Z").getTime())

通过该方法可以快速的转换成距1970 年1 月1 日之间的毫秒数。

2021年年终总结

作者提到他的年终总结是回答了三个问题:1.今年什么事做得比较好; 2.今年哪些事做得不太好; 3.我学到了什么。

《掌控习惯》

1. 今年什么事做得比较好

1.获得腾讯音乐和阿里巴巴的实习机会

在4月份的时候,看到大家都在说准备春招,彼时的自己还在准备雅思考试,留学中介也在强调简历上有实习的经历会更容易的申请到学校。因此,自己屁颠屁颠的就跑去准备了自己人生的第一份简历,又像个愣头青似的直接开始了海投简历。一开始的自己啥都不懂,八股文、算法、简历经验啥都不懂,第一次面试甚至还选择了腾讯最难的WXG。毫无疑问,第一次就把我干下来了,不过自己也是抱着试试看的想法💡,也没太在意这次面试的失败。(我甚至感觉很平和,认为失败是必然的,事后才知道自己直接就面了最难了)多亏这一次的经历,让我及时的认识到了自己的不足,及时做了复盘记录,同时也开始了算法的复习。整个4月我都在持续面试,不管大厂小厂我都尝试投递了简历,并且也陆陆续续的获得各家的面试邀约,有顺利走完全程的阿里和TME,也有止步于一二三面的:猿辅导、PCG、网易、莉莉丝、百度、美团、DJI、小米,甚至有简历关都没过的:字节跳动、京东、PonyAI等,少说自己也海投了100多家了。最后多亏阿里和阿鹅一视同仁只看能力不看学历的态度,才最终收获到大厂实习offer,实在是欣慰和感动。

2.获得腾讯音乐的转正机会

经历7-9月3个月的实习,终于拿到了TME的转正机会,真的是很高兴也很庆幸自己能够从一所普通的院校毕业后,就能进入大厂工作,希望能够好好的把握机会,充分挖掘和发展自己的职业技能,让自己早日全款买到Model 3。

(2023年9月8日:现在自己已经攒够钱可以全款买Model 3了,不过我现在又想要敞篷了,人的贪念真的是无穷无尽的😂)

3.学习滑雪🎿

年初的时候,融创雪世界开业了,同时朋友们恰好想去滑雪,因此一拍即合同朋友组团去滑雪。在南方玩雪的感觉,真的是跟北方不一样,真的是太有趣了,虽然也摔了几次,但最终从初级滑道上滑下来的感觉真的是好开心啊。由此我也定下自己的小目标,争取在未来5年内去更多的地方滑雪玩。

4.入手M1 Macbook作为我的笔记本

我的上一台笔记本是Matebook X Pro,同样是一台挺不错的轻薄本,不过不知道是不是硬件的问题,系统总是宕机,为了更好的工作,在3月的时候入手了M1的Macbook作为我的主力开发机器。恰逢我是前端工程师,因此日常用的很多工具其实都是Base Broswer的,浏览器能跑的,我就能用,因此切换平台对于我来说并没有太多负担。高性能高续航深得我心,希望能够用至少5年以上吧。

2. 今年哪些事做得不太好

1.雅思复习

原计划是出国留学的,自从疫情反复不定之后,我就开始摆烂了,根本无心学习,导致越考越低分,实在不是学习的料,这个自认为做的是真的不好。

2.睡眠时间

最近一年都在忙着面试、开发独立项目、加班,总是缺觉,直到年底(11月-12月)才回到日均7小时30分钟的睡眠状态。之前天天6小时上下,还抑郁焦虑,真的是很难受,很孤独,最后导致自己的睡眠质量很差。不过不幸中的万幸是拥有两个很好的朋友,总是找我出来玩,舒缓了一部分的压力,实在是感谢🙏。

3. 我学到了什么

1.学校太差,经历来凑

2.投简历赶早不赶晚

3.海投简历,多试试看,总归不是坏事

4.积极寻找资源获得部门内推的机会

5.合理分配时间,多睡睡觉,身体才是革命的本钱

2022年Todo

1.毕业🎓

2.攒钱买Model 3

3.开发独立应用

4.平安喜乐,身体健康

(不爱搞虚的,放空话没用,还是订一些切实可行的计划吧,找女朋友我也想写上的,但这都是缘分吧,自己写上了22年年终总结也是要划掉的吧😂)

wTodo Watch版微软Todo客户端

背景

我是一个很喜欢用电脑记录待办事项的人,感觉不通过待办事项我很容易就记不住事情。由于原来是在华为全家桶的用户,对跨平台有强需求(Windows+Android),因此顺理成章的选择了微软Todo作为我的待办事项记录平台。说实话,即使今天我已经开始转回Apple全家桶,但Todo的工作效率还是比Apple自家出品的”提醒事项”要好用很多。(Todo添加逻辑很自然,一打开界面就可以添加编辑待办事项,没那么多繁琐的设置)。

简介

wTodo是一款为Apple Watch适配的第三方Microsoft Todo应用, 通过该应用您可以在Watch端, 操作自己的待办清单。

系统需求

  1. iOS 15.0+
  2. watchOS 8.0+

商店链接

仅售1元

应用截图

Apple Watch Series 7 截图

使用指南

https://w-todo-guide.vercel.app/

日常碎碎念 2021.12.18

前言

距离上一次的日常碎碎念又过去半个月了,最近半个月主要都是在忙Apple Watch开发。说实话Apple Watch开发真的是一言难尽,尽管遇到了那么多的Bug和问题,最后都还是得到了解决,现在就在等App Store的审核了,到时候再单独发一个帖子揭晓一下是什么APP。

回顾

1. 广州动物园

周末的时候,无聊跑去了广州动物园怀旧。记忆中上一次去动物园还是10年前的时候,说实话,长大后去动物园看动物,跟小时候去动物园的感觉真的是完全不一样。小时候总感觉动物园哪里都很有趣很好玩,对动物还没啥概念;长大后才知道动物原来是这么巨大,皮肤的纹理是多少特别和独特。(不禁让我代入到了最近流行的《动物园怪谈》中,小朋友真的是没啥认知,只有大人才会有认知威胁😂)。

黑天鹅(后面那个小jiojio,划一下水就缩回去了,恰好拍到了)
旋角羚(来自非洲)

几乎不喝水的动物。旋角羚是典型的沙漠动物,它们生活于离水很远的荒漠地带,主要以沙漠上粗糙的植物为食,很耐渴,极狐不喝水,需要的水分从多汁的植物中获得。(来源于动物园的标牌)

小斑马🦓

超可爱的斑马Baby,小小的一只。最令我惊讶的是斑马的条纹是如此的奇特,这种花纹居然是自然产生的,着实令人赞叹大自然的神奇。感觉以后有小朋友的时候,一定要小的时候来一次,长大之后来一次,不同的阶段学习到的知识是不一样的。

大犀牛🦏

犀牛的屁股好大哦,以前看动物世界,总感觉犀牛小小只的,没想到来到现场看是这么的大,类似于一头大黄牛了,但强壮的四肢和粗犷的牛角,不免让人胆怯。(被迎头撞上,就只能reborn了吧)

长颈鹿🦒

好多家长带着小朋友去喂长颈鹿,20块钱一把草,小朋友的钱真好赚呀哈哈。感觉长颈鹿都吃饱了,图上离我最近的那头长颈鹿,都吃完出去溜了四五圈才跑回来继续吃,某种程度上还挺爽的,毕竟有这么多草吃。

亚洲象🐘(左边的大象在拉💩)
小熊猫(毛发超级油亮,全场最喜欢的小动物了)
火烈鸟🦩(门口免费可以看,一开始我还以为是模型)
白狮子🦁️(不是说有4头吗?怎么只有2两头了?)
大老虎🐯
大熊猫🐼

说实话20元还能看大熊猫,还要啥飞机哦,隔壁长隆动物园起码得200元了吧,差不多就得了,感觉这个票价真的很真诚了。

奶瓶喂鱼

奶瓶里面是饲料和水,锦鲤嘴巴够大吸力很强,因此可以很轻易的从奶瓶中吸出饲料,吃到私聊,着实有趣。不过20块钱一瓶,我一个人就算了吧,小朋友玩一下还挺好的。(看到别的小朋友在玩,恰好就蹭了个画面来拍一下)

2. 入手MUJI钢笔✒️

铝制钢笔

在MUJI在线商城偶然看到这个新的商品,另外还有一支聚碳酸酯外壳的钢笔,不过可惜太粗了质感不太好,最后入手了铝制钢笔,超级轻,质感超棒,高级感拉满,很喜欢这支钢笔。

3. 三战雅思大失败

第三把雅思了,就跟跑团一样来了一次大失败,只有5分史上最低分数,越考越低😭。不过也是意料之中的成绩了,回顾过去的一个月,天天忙着工作的事情,同时还在兼顾Apple开发,没有专注在雅思复习上,三心二意的,考出5分这种低分就是理所当然的了。不过也不要灰心,等处理完最近的琐事,还是有机会再战雅思的,加油💪。

计划

  1. 编写毕业设计程序
  2. 完成毕业论文
  3. 准备APP上架

结尾

平安喜乐,好好地过完剩下的2021年,争取2022年前能推出自己的第一个苹果App吧。

日常碎碎念 2021.11.30

前言

转眼间就来到了月底了,时间过的真的太快了吧🤯。11月11日才写过一篇日志,一会就到月底了。

回顾

1. 核聚变

此核聚变非彼核聚变,说的是机核网的游戏展。机核网是一家类似于游民星空一样的游戏媒体,与游民星空不同的是,他们每一年都会在一些城市中举办名为“核聚变”的游戏展。这已经是我第三年参加这个游戏展了,真的是满满的回忆和感动。

入场地图和手环

核聚变的游戏展主要是由三大部分组成,厂商游戏(比如街机,厂商的新作品宣传体验)、机核网的挑战游戏(一些小游戏,可以获得盖章,兑换每年的限定奖品)、独立游戏展。

厂商游戏在这里就不细说了,其实就是各家的新游戏新机器的宣传,比如“洗衣机”、奥特曼之类的街机都来了。

机核网的挑战游戏主要是给为到场的玩家增加一个互相认识的机会,大多数的挑战都需要两名玩家互相比拼,最终获得胜利的玩家才能获得盖章,因此胜利的呼喊声总是此起彼伏的各个挑战游戏区中传出来。由于已经是第三年参展了,因此这次早早的就到了展子里,接着时候早少人排队的机会,把所有挑战游戏都玩了个遍,真的是太爽了哈哈哈哈哈!

独立游戏区则是机核网邀请各位技术dalao来展示自己开发的独立游戏的展区。这次来到现场的游戏就有超过50款游戏,由于实在是太多好玩的了,因此我在这里也就只能介绍两款我玩到的很好玩的游戏,其他好玩的游戏我都没机会玩上。(22年的核聚变我一定要买两天票玩个爽)

《陆栋301房》

一个非常治愈的小游戏,游戏主要是通过一个很简单的迷宫小游戏来唤起大家对于阿尔兹海默症(老年痴呆)患者的关注。游戏会有两个部分,左侧是迷宫代表的是患者的真实视角,迷宫中有一个小点代表的是患者的眼睛焦点,右侧则是实际环境的样子。它主要想呈现出的是,对于患者而言物体是没有任何意义的,它们只能辨认出这些物体的轮廓,但却记不起来他们的含义了,只有移动到特定的物品上才能唤起部分的记忆,并且通过多个物品来建立事件的回忆(比如记得吃药💊)。虽然内容非常的简单,但传递的含义确实丰富和多层次的,通过简单的游戏来还原患者的视角是非常难得的,寓意不错👍。(对面家的双相我也玩了,他们也是想通过游戏来唤起大家对焦躁症患者的注意,但我没太能Get跳跃游戏与患者之间的关系,感觉还没打磨到位。右边的小姐姐们都是开发者,实在是太厉害了。)

独立推理游戏《Justice.exe》

在《Justice.exe》这款独立游戏中,我们扮演的是一位专门为AI机器人服务的律师,面对未来世界中智能机器人与人类之间产生的法律问题,为AI做出辩护。与其说是推理游戏,更不如说是一款收集线索的游戏,类似于《逆转裁判》的游戏理念,不过故事背景去到了2077年的未来世界中😂。总的来说是一款有巨大文本量的文字游戏,目前已经被国内代理引入,正在积极制作中文翻译中。在游戏过程中,也跟译者有了一些接触,能看的出他们作为翻译工作者也正在全力以赴的为之付出努力(翻译文字,反馈Bug,作为玩家和开发者之间的沟通桥梁),实在是太棒了,期待正式推出。(预计会在Steam上推出,目前Steam上的是旧版本的Demo,据说不久后就会更新我在核聚变上玩到的新版Demo,大家想玩的话,就拭目以待吧。)

战利品

玩了一天,拿了广州限定的环保袋、橡皮擦、面巾就回来了,剩下的都是自己买的或者从厂商舞台上蹭回来的,总的来说还是非常高兴的,希望明年能够继续去呀。(说实话我感觉,19年核聚变送的杯子是最使用最Sex的,到现在我都非常喜欢拿来喝气泡饮料,真的很好看)

2. 白洲威士忌🥃

之前一直听👂大家说日本威士忌的口味比较清澈,没有苏格兰威士忌厚重的煤泥味,因此抱着尝鲜的目的购入了这一瓶的威士忌。喝起来的口感非常的纯净清澈,有非常清香的粮食味道。(说实话我也不是特别专业的威士忌爱好者,目前只知道这个酒是好酒,但好在哪我还说不出来,以后买点更贵的,混合麦芽的再对比看看,现在还是喝的太少了。)

3. 三战雅思

第三把雅思了,主要是自己酒后失智又报了一次,因此不得不去继续考。希望能够有更好的成绩吧,如果可以说不定又出去了呢?

计划

  1. 复习准备周末的笔试
  2. 准备毕业论文
  3. 家里蹲

结尾

还有一个月就要到22年了,希望接下去的新一年能够平平安安的吧。

【17.0已解决】独立 Watch App 真机调试无网络的问题

问题

现在我正在开发一个独立的 Watch App 应用,但是我发现在模拟器上调试时是可以正常连接网络的。但是当我上传到真机时,就会出现无网络连接的问题。具体的报错如下:

2021-11-20 21:42:27.156338+0800 wTodo WatchKit Extension[1068:2225475] PDTask <29C198EA-480A-459F-B5B9-421D9C26C7D8>.<3> finished with error [-1009] Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline." UserInfo={_NSURLErrorFailingURLSessionTaskErrorKey=LocalDataPDTask <29C198EA-480A-459F-B5B9-421D9C26C7D8>.<3>, NSLocalizedDescription=The Internet connection appears to be offline., _kCFStreamErrorCodeKey=50, _NSURLErrorRelatedURLSessionTaskErrorKey=(
    "LocalDataPDTask <29C198EA-480A-459F-B5B9-421D9C26C7D8>.<3>",
    "LocalDataTask <29C198EA-480A-459F-B5B9-421D9C26C7D8>.<3>"
), NSErrorFailingURLStringKey=https://baidu.com, _kCFStreamErrorDomainKey=1, NSErrorFailingURLKey=https://baidu.com}

测试机型

Apple Watch S7

系统版本: 8.1

网络环境: WIFI

原因

在watchOS 8中,GPS版的Apple Watch是不能单独设置APP的网络的,他会镜像iOS侧的App网络设置,比如设置支付宝可以用Wi-Fi,则Watch侧的支付宝App也可以用Wi-Fi。现在陷入的一个僵局仅仅是存在于新推出的独立App,独立App顾名思义就是只存在于Watch侧,iOS侧是没有App的。因此也不存在镜像iOS侧App网络设置的可能。这导致了如果App默认被设置成了不能联网,就会导致用户没法更改App联网状态(因为iOS侧和Watch侧都不能更改App的网络设置)。

解决方案

  1. 彻底关闭手机
    该方法是为了让 Apple Watch 不去同步手机的网络设置(默认关闭网络),促使独立应用能够正常联网,但该方法仅适用于网络连接少或者无的独立应用,比如小说、阅读器等。
  2. 开发 iOS 配套应用
    如果 iOS 侧有配套应用,则用户就可以在 iOS 侧对应用的网络权限做控制,进而实现 Watch 侧应用联网,该方法适合对于网络请求较多的应用。

PS:这个 Bug 的出现真的是很无语,花了我一整天的时间才解决,心累啊😣。

2024/02/17更新:

在watchOS 10.3.1 iOS 17.0的环境下,独立APP已经可以在“蜂窝网络”中看到“仅用于手表的APP”选项,在这里可以单独配置WatchAPP的联网能力。