自己一直关注小众软件,之前小众介绍了一款AppleDNS用于苹果用户的应用商店加速,自己其实不是特别需要,但是为了更加丝般顺畅的使用,按耐不住心里的期望,就试了一把。

其实这种DNS类的加速方案不是没有过,但是由于苹果的IP地址范围其实很广,加上网络情况的瞬息万变,这种方案的可用性、有效期其实并不长;而这一款的网址库似乎是通过抓包分析的,恐怕连一些https的服务器也包括进去了;但是https的情况更加复杂,可能过两天服务器说换就换了,原有的host就失效了。

但是我试用的过程中产生了更严重的后果,使用的时候Mac的App Store不能更新,也无法安装新应用,提示“无法验证产品分发文件。它可能已损坏或尚无签名”。于是很失望的把AppleDNS下掉了,心想刷下DNS,过两天它自己就升级了,不用太担心。

可谁成想过了半个月,其他App都升级了,当时无法升级的还是无法升级。于是打开控制台,看到错误

1
16/5/2 15:18:44.410 storedownloadd[522]: *** Assertion failure in -[CheckPreflightOperation verifyDistributionAtURL:allowsDevSign:allowsUnsigned:osVersionToBeInstalled:error:distributionController:], /Library/Caches/com.apple.xbs/Sources/Commerce/Commerce-462.9/CommerceKit/CheckPreflightOperation.m:291

才知道这是中招了,一定是App Store把某种验证文件从当时错误的验证服务器保存在本地了,现在再行升级虽然不受AppleDNS的影响了,却还是无法升级的。经过google,发现有人通过创建用户,输入自己的AppleID,是可以升级的。我想,这说明阻止升级的文件是在用户目录的,用户目录最著名的供程序使用的目录是哪里?当然是~/Library/Caches啦,于是进去清空,然后安装、升级,进度条又一次开心的跑起来了。

看来在苹果上用DNS类产品还真是挺危险的,如果产生问题的不是Mac而是iOS,那恐怕只能等苹果自己修复了。