mac 睡眠时, ios 微信仍然显示 mac 微信已登陆,导致“mac 登录时关闭手机通知”失效

2023-02-01 00:21:16 +08:00
 haoyh1
做了实验,mac 断网后这个状态仍然不变,但在 mac 联网时直接关闭微信程序,就好了,感觉是微信的判断逻辑问题
请问在微信或 macos 解决这个问题之前,有没有什么方式可以在 mac 睡眠时自动触发杀掉微信进程?
1222 次点击
所在节点    Apple
8 条回复
zilil
2023-02-01 07:35:19 +08:00
导致“mac 登录时关闭手机通知”失效什么意思?没怎么明白
zhaoxin
2023-02-01 08:43:23 +08:00
应该不是失效,而是你睡眠的时候,微信判断 Mac 在线的时间不是立即得到反馈的。你可以通过使用关机而不是睡眠来进行判断。如果使用的是关机,看看关机之后,Mac 是否仍旧在线?如果仍旧在线,那就说明是这个判断存在延迟。

这个问题最好的解决办法是由微信自己来解决。macOS 本身有 API 来获取系统当前的状态,比如睡眠之前就有通知,微信可以进行处理,来发送到服务器,电脑即将休眠。所以,你最应该做的就是联系微信来进行处理。
haoyh1
2023-02-01 09:57:53 +08:00
@zhaoxin 关机试过,是不在线的,符合预期。和我正文提到的杀微信后台一个效果
感觉确实是微信的问题
simplereasy
2023-02-01 10:20:58 +08:00
我觉得是微信的问题,我之前在电脑上登录,然后关闭电脑,发现手机上还是显示微信在电脑上为登录状态
zh826256645
2023-02-01 11:06:18 +08:00
老问题了,我的方案是用 hammerspoon 判断电脑休眠时,杀掉微信进程,但是根据我的经验,这种杀掉微信进程的方式,有时候微信还是判断成你的 mac 登陆状态还在

可以参考下我的配置
https://github.com/zh826256645/hammerspoon_config
orangy
2023-02-01 20:14:01 +08:00
这是微信的最初设计理念导致的:
微信最初设计是类似于 iMessage 的通讯工具,知道手机号就能直接发送消息(早期微信可以不用验证好友),所以微信根本不会判断是否在线(就像你发短信的时候根本不知道对方是否在线)…然而微信慢慢变成了和 QQ 类似的社交工具,可是微信并没有增加状态检测功能,这也导致了后续一系列问题:
1.虽然手机大多数时候是 always-online 的,但电脑不是,可是电脑版微信却没有增加状态检测功能,如果你设置为电脑端登录时关闭手机通知,而你恰好又不在电脑边上 /电脑睡眠,你会错过这段时间的所有消息( QQ 电脑端检测到状态为离开时,手机上会自动恢复消息推送)。
2.手机在接打电话时,如果只有手机端登陆,微信语音 /视频会提示忙音;但如果电脑 /Pad 端同时登陆,电脑 /Pad 端依旧会收到语音 /视频提示,拨出方不会收到忙音。
3.手机没信号 /关机时,微信语音 /视频拨出方不会收到任何提示。
4.偶尔会出现在某一终端已经接听微信语音 /视频,在其他终端依旧持续提醒的问题。
5.如果有较长时间不打开 iPad 微信,而这期间手机接到过微信语音 /视频,再次打开 iPad 微信时,依旧会弹出语音 /视频提示。
zilil
2023-02-01 20:17:49 +08:00
@orangy 还是优先级不高的问题,之前 Mac 微信一登录还推送之前手机接收过的消息,最后也修复了.手机已读消息,电脑端同步的时候一开始显示未读小红点然后过几秒就同步成已读取消小红点.
orangy
2023-02-03 09:17:53 +08:00
@zilil 也可以这么说吧,bug 太多,不想管而已…张小聋:你在教我做事?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/912091

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX