肇鑫的日常博客

肇鑫 / Owen Zhao

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

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

最新文章

没有工信部的投诉,联通你就置之不理吗?
——记29天艰难解决联通手机卡收不到银行短信问题

随笔

联通手机收不到上海银行短信的问题总算解决了。从7月20号开始,到8月18号凌晨可用,共计29天。可以说耗费了一个月的精力。虽然最终问题是联通解决的,但是耽误这么多天,也完全是联通的问题。

我分别联系过京东金融客服、银联客服、辽宁联通客服,上海银行客服、上海联通客服。问题我搞清楚了,但是联通不配合。

在要求联通解决这个问题25天都没能解决这个问题的情况下,这周一(8月14号),我不得不向工信部投诉辽宁联通。

周二(8月15号),我收到联通接收到工信部反馈给它的我的投诉的通知。之后接到联通的电话。周三,上午再次收到联通的电话,让我再次尝试一次,它那边好定位问题。上午沈阳联通创建了跨省协助的工单。下午,再次收到联通电话,说上海联通反馈了。说是我在2010年开通了屏蔽来自上海的业务短信的功能。解开需要1个工作日。让我18号再试。

我问,这个业务是如何开的?联通客服语焉不详。我说我不是想追究责任,我就想问,如果现在一个普通用户,找你开这个屏蔽某省范围的短信功能,能开通吗?对方回答,我不太清楚这个业务。

至此,这个问题应该算是解决了。早在2010年,不知何故,联通为我开通了屏蔽所有来自上海业务短信的功能。这导致我有好多事情办不出,但是我一直都没重视。直到这次,我终于较真了,才解决了这个问题。

由于内容较多,精简为流程图便于理解。括号内的天数是距离我首次向联通请求协助的日期

7月20日(+0天)

round 1

round 2

7月21日(+1天)

round 3

round 4

7月28日(+8天)

round 5

8月3日 (+14天)

打10010反映联通无回复问题。但是还是没有任何回复。

8月14日 (+25天)

round 6

8月18日 (+29天)

手机恢复正常。

记一次CCC4提示Clone出错的故障排除

技术

macOS 10.12的磁盘工具移除了之前的磁盘查错功能,号称磁盘不会再出错,其实不然。今早CCC4(Carbon Copy Cloner 4)提示备份完成但有错误。

ccc erro

点开查看日志,发现已经连续5天备份错误,达到极值,因此弹出特别提醒。查看最早那天,是一个警告,说是一些文件名字太长,没法备份。之后几天就都是错误了。日志内部记录是,有一个文件夹,出现了无限循环的自引用的情况,类似“a/a/a/a.../a”,具体几层我没数。

ccc alert

我删掉了多出来的文件夹,再次点击CCC的clone,但是过了一会儿再看,它又卡在这个文件夹里的".DS_Store"文件的位置。于是我打开磁盘工具,在源盘和目标盘,分别做了一次急救。再次重新运行clone,这次成功了。

仔细回想这段期间发生的事情,几天之前的一次意外断电嫌疑最大。那天突然断电,又马上来电,结果家里的电脑都灭了。当时这台电脑是处于睡眠状态,而非开机,但应该还是受到了一些影响。

结论:当涉及磁盘的故障发生时,我们还是可以使用磁盘工具进行修复的。虽然磁盘查错表面上看没有了,但是其实是被转移到了急救当中。

另外,我还发现,虽然CCC每天都会有一个通知,但是由于它大部分时间都是成功的,所以那个通知我很少看。而今天之所以能发现错误, 是因为CCC在连续5次错误后,使用了提示风格的通知(平时都是横幅的,过一会就会自动消失那种)。为了今后能第一时间收到错误的通知,我开启了CCC的邮件通知功能。它在备份错误时,会发一封邮件到我的邮箱。这样就不用等5天才知道有错误发生了。

Neato BV85使用22个月的感受

评测

Neato BV85买来使用至今已有22个月了。期间增添了底部的抹布。最近更换了电池和边刷的皮带(实际上是个胶皮圈)。

优点:

  1. 自动规划式,清扫速度快,吸力大。我最初买的是小狗品牌的千元机型,是随机碰撞式的。但是用了几次发现吸得不干净,而且几天后它在自动后退时,会发出很大的噪音(摩擦的嘎吱声)。于是就找京东退货了。钱退回来之后,还是想买,但是不想买随机碰撞的了。于是买了这个。Neato用起来还是挺满意的,打扫的很干净,而且只扫一遍,速度令人满意。我家96平方米(房证面积,无电梯),充满电一次就能打扫完毕。
  2. 结构简单,易于维护和修理。我夏天每两天清扫一次,冬天每三天。尘盒平均每2周清理一次。顺便还会摘下边刷、滚刷等清洗。最近几个月由于电池不太行了,需要二次充电才能清扫完毕。再加上这两天边刷不怎么转了,于是我找淘宝我买机器的卖家让他帮我找变刷的皮带,顺便又买了一块新电池。平时清洁还是挺方便的,不需要使用任何工具,徒手把边刷、滚刷等拿下来,清洗晒干就好。换电池也比较容易,用一般的螺丝刀就行。不过换边刷的皮带就没那么容易了。首先是螺丝刀的问题,必须是T10的螺丝刀。我本来有,但是我的没那么深,于是我只好从淘宝又买了一把单独的T10螺丝刀。拆机我看的Youtube上的拆机视频,难度不高,一次就成功了。
  3. 功能完备,绕线能力突出。临时打扫一定区域的功能很实用。比如你做电脑边上吃了一堆零食,吃完之后,只需要把Neato抱过来,让它把附近区域清理一下就可以了。另外Neato也很不容易被线缠住。

缺点

说完优点,再说说缺点。

  1. 价格和保修不匹配。我买的时候是4500,这个还是优惠后的价格。但是保修呢,只有1年。我想一般人花这个价钱买扫地机应该不会想只能用一年吧?的确,美版也只保修1年。但是美版的机器、配件等的价格也都比国内的行货低不少啊。而且1年的保修应该是最少的了。高端的机型只保修1年,令人有些遗憾。
  2. 外壳脆,做工粗糙。虽然不影响使用,但是Neato的塑料外壳的确有问题。比如电池仓拧螺丝的位置,就开裂了。我拆机时,也发现内部有崩掉的塑料茬儿。放尘盒的位置里面,也有开裂的地方。另外,它所有的螺丝都是直接拧在塑料外壳上,没有使用任何垫片。
  3. 清理尘盒的通知过于频繁。这个功能开着时,基本上每清理两次就会提示要清理尘盒。但是打开一看,灰只有浅浅的一层。所以,这个通知功能,对于我来说,后来变成了查看功能。看一看没啥东西,我就又把它盖回去了。
  4. 边刷更换皮带比较麻烦。虽然拆机过程不复杂。但是如果这个皮带属于耗材,需要定期更换,那么这个更换应该像换电池一样容易。
  5. Neato对于能通过的通道宽度,要求过宽。比如沙发和茶几之间,如果想要Neato清扫,就必须挪开较宽的距离才可以。

未来期许

我很少使用Neato的定时功能。因为家里一般都有人在,而在清理时,为了清洁更干净,我会把垃圾桶移开,并且把餐座旁的椅子挪开。说起来奇怪,Neato有好几次卡在餐桌旁的椅子的两腿之间,所以我就只好把椅子挪开了。

期待未来Neato可以同智能家居相连,能够自动在家中无人时进行打扫而不必进行设置。此外,也期待会有更好的app,可以在程序里的扫描地图中直接划定区域作为虚拟墙,而不必设置物理的虚拟墙。

iMac 27 5K 2014 late 故障现象

技术

先说结论

在24小时之内发生了5次问题,其中4次是使用时电脑自动断电并无法立刻开机,需要切断电源并等上一段时间再开机。1次是我主动关机之后,无法再开机,症状与自动断电的相同。

从某次开机到自动断电,最短的时间是30分钟左右。例如下文提到的第三次和第四次是在1小时之内发生的。最长,可能用了整晚都没事。

我个人倾向于这个和系统的负载有关,CPU负载高或系统整体功耗高时,更容易自动断电。我的系统没有安装游戏,因此没测试显卡负载高的部分。

第一次故障

2016年12月21日下午5点10分左右,正在运行的iMac突然断电(屏幕全黑,USB鼠标灯灭)。我开始还以为是停电了,但是看了一下插线板,发现灯都还亮着。

  • 按iMac背部的电源键,没有反应(正常开机会有“当……”的声音)。
  • 拔掉所有外接设备(USB鼠标,USB移动硬盘),再按电源键,依然没有反应。
  • 插拔电源线与插座,换另外一个插口,再试。没反应。
  • 拔开电源线与iMac,再试,没反应。
  • 拔下电源线,将iMac放到床上,打开iMac后盖,拔下内存再重新插上。
  • 只连电源线再开机,正常开机。进入系统之后连接鼠标和移动硬盘。一切正常。

第二次故障

本来这一切就应该结束了。但是我好奇究竟是什么原因导致这个问题。于是晚上我在iPad上搜索类似的故障。

其中,有一种说法引起了我的注意。该说法说,如果是电源的问题,那么你只要不关机,就不会有问题。比如你每次不使用时,都是用睡眠而不是关机,那么就没问题。一旦你选择了关机,那么再开就有一定的几率无法开机。

我一直都是使用睡眠而非关机的,所以这个说法很吸引我。22号上午8点多,我选择了关机。然后按电源键开机,发现的确没法打开了。

8:50的时候,我去苹果网站申请服务。这个时间我记得很清楚,因为苹果的服务是从9:00开始的。

9:00的时候我接到苹果打来的电话。听了我的说法后,苹果说可以安排上门,但是由于当时苹果的内部系统有问题,说是稍后安排好之后再通知我。期间我收到了苹果高级客服的邮件确认。

此时我尝试重新开机,发现竟然可以开机了。然后选择关机,再开机,竟然也都没有问题。于是我给苹果的高级客服写邮件,说明如果还没有申请维修的话,就先停下,我要再测试几天。苹果回复说系统还没有好,还没申请维修。

第三次和第四次故障

收到苹果回复的邮件的时间是上午10点。我使用了一段时间,iMac突然又自动断电了。这一次,我选择将内存插槽更换一下,之前是1、3,我更换为了2、4。更换没有起到作用,11点刚过不久,iMac又自动断电一次。

我只好再次预约了维修。

更进一步的研究

现阶段故障的定位还是太模糊了。自动断电太过随机,我期望可以更快的定位故障。

我仔细回想了一下。这几次故障时的共同点。第一故障时,我在Safari里看在线视频,Parallels Desktop的虚拟机开了两个,一个是macOS 10.12,一个是macOS 10.11,都在升级系统。当时CPU的负载较高。

第三次故障时,我为了进一步的测试,运行了视频转码软件,对系统进行压力测试,也是CPU高负载的项目。

因此,我猜可能是CPU高负载导致耗电升高,然后电源温度过高导致无法开机。

为了测试这个结论,我设计了一个实验。打开转码软件,让它把一个1080p的mkv,转码为mp4。我用手表定时了5分钟。软件显示转码要8分钟。5分钟时间到的时候,我点转码软件的暂停,结果就在我点暂停之后的瞬间,iMac断电黑屏了。

但是这个结论在后来的验证中没能证实。接下来的使用,包括整晚的使用,都没能出现断电的情况。因此,我这里还是没能得到一定能复现问题方式。

macOS Sierra 增强了与磁盘加密的兼容性

技术

之前的macOS,一旦启用了FileVault。在升级系统之后就会无法自动开启远程登录,必须本机登录才可以。新的macOS Sierra,同样的情形下,会自动进入到输入用户名和密码的地方。这样就方便多了。

现在,除非是断电,否则就不需要本机直连服务器了。可以一直远程登录。

网页版微博时间线的问题

随笔

相对于每次的“浪费”加载,新的时间线的思路就是“节省”,节省到什么程度呢?就是每个用户的时间线上的每条微博只从新浪加载一次。

具体实现是这样的。首次使用时,从微博加载到用户浏览器缓存,然后再用时就从缓存里调用,缓存失败也不从微博加载,而是显示一个虚假的正在加载,但是永远也不会成功。

验证方法:刷新微博到最新,然后清空浏览器缓存和cookie,关闭浏览器,再打开。重新登录微博。你会看到一个一直加载,但是永远不会成功。

从孤岛危机获得的vista驱动经验值

最近喜欢上了玩儿crisis(孤岛危机),结果听说最新的驱动提升了fps,看看自己当前的驱动是182.08,而最新的已经是186.18。于是很开心的从驱动之家下载了回来。

兴奋的安装上,打开游戏,玩儿了一会就黑屏了。ctrl+alt+del调出来任务管理器,查看温度,才70℃啊。上网搜索,结果发现有人说这个驱动玩儿crisis会黑屏,说的都是9800gt的用户,而我的是8800gt(9800gt是8800gt的马甲版本)。好吧,退而求其次,卸载掉186.18,安装上了185.85。结果还是黑屏。我怀疑是不是驱动卸载不完全啊。于是卸载掉了185.85。重启之后发现nvidia的控制面板还能进入,显示驱动版本是182.08。但是添加删除程序里面已经没有可以卸载的地方了。

上网搜索nvidia驱动的卸载工具,结果找到的都是04年的。当然不能用了。于是决定采用最笨的方法,下载对应的驱动,安装上再卸载,直到完全卸载干净为止。

在这里,我要感谢驱动之家跟google,帮助我找到了如图的所有驱动。

清理干净了之后,我重新安装上了186.18,结果还是黑屏。安装nvidia system tools监控温度,结果发现最高才75℃。最终,我卸载掉了186.18,重新安装上了182.08。一切正常了。

总结一下,我安装的顺序如下:

1 尝试安装阶段,安装186.18(求新)后卸载(游戏黑屏),安装185.85(求次新)后卸载(还是黑屏);
2 清除驱动阶段,因为我怀疑新驱动不好用是因为旧的没有卸载干净。安装并卸载了182.08,180.48,177.83;
3 尝试新驱动阶段,安装186.18(求新)后卸载(还是黑屏而且温度不高)。最后我还是决定继续用182.08算了。稳定最重要。

额外的收获:我发现卸载掉旧驱动,vista并没有回到没有驱动的阶段,而是变成了回归到上一版驱动。但是这里存在一个bug,就是上一版驱动变得无法卸载了,只能用安装了再卸载这种本办法。而vista这种保留驱动多个版本的方法,使用空间换取了便捷。如果是最求系统速度最快的用户,就应该规避这种方式,每次升级驱动的时候,采取先卸载,重启之后再安装的方式。这样虽然时间会长一些,但是却可以保证系统最大的整洁与快速。

最后,还有一个收获就是我卸载掉了那些多余的驱动之后,c盘增加了好几G的空间。囧

最近更换键盘和鼠标的小结

随笔

之前我键盘是樱桃的MX 6.0,是全尺寸键盘。鼠标是雷蛇的炼狱蝰蛇。我用Karabiner将键盘的F1-F12映射为Mac的键盘功能键。

最近我觉得鼠标距离右手有些太远了。于是买了海盗船的K65 RGB(选RGB而不是普通版的理由是RGB版有掌托,而普通版没有。另外,RGB版更好看一些)。这个键盘比全尺寸键盘少了数字键盘区,因此更为紧凑。

买之前我就知道海盗船的键盘没有官方的OS X的实用程序,需要使用非官方的ckb。安装了ckb之后,我发现Karabiner不能截获这个键盘的事件。也就是说,Karabiner的映射功能在这个键盘上无效。而Windows的键盘,多媒体按键的部分。只有音量加、音量减、静音以及播放/暂停键是好用的。上一首和下一首只在iTunes里才好用,而对于其它的程序(比如QQ音乐)无效。

于是我在雷蛇的实用程序里,把雷蛇的侧键改成了上一首和下一首,雷蛇的这个是全局的。但是这样原本我设置的多任务切换和程序内窗口切换功能就不能使用了。

今天,我去雷蛇的售后那里,修理我的鼠标的左键双击的问题。在等待修理的时间里,我去旁边的电脑城买了一个罗技的G502鼠标。

回到家里,我用罗技的实用程序将G502用于调节DPI的斜上方的两个键设置为上一首和下一首,结果我发现,罗技的这个上一首和下一首,只能控制iTunes,同样也是对于第三方的程序无效的。

事情似乎陷入僵局。我突发奇想,那是不是Karabiner对于鼠标的模拟键盘输入同样有效呢?我在罗技的实用程序,将G502鼠标的侧键设置为了F7和F9,这两个键在Karabiner中被转译为上一首和下一首。结果,竟然真的好用。于是我又把鼠标的G键,设置为F8,这样我连播放/暂停也都用了。完全就可以用鼠标来控制全局的音乐播放了。

小结

  • K65 RGB的要使用ckb控制背光,Karabiner对其无效
  • G502的罗技实用程序的多媒体功能,仅针对iTunes,对于全局程序无效
  • Karabiner虽然对于K65的按键无效。但是它对于G502模拟出来的按键有效。因此,通过G502模拟按键的方式,就可以控制多媒体功能了