FaceTime 让 Mac 拥有 Push Notification 功能

前几天朋友们在讨论 FaceTime for Mac 和 Skype 桌面版有什么区别,简单总结包括:
  • FaceTime 只做视频聊天,不做文字。
  • FaceTime 没有相互的好友关系,不需要对方验证(类似于 Email 和电话系统),只要知道对方的 FaceTime ID (电话号码或邮件地址)就能发起通话。
除此之外,FaceTime 还有一个杀手级的功能:所有传统即时通讯(IM)集成的视频通话功能都要一个前提——两个人需要同时登录一个 IM 并且知道对方在线。以往想用 Skype 视频聊天的时候,总是先发一条短信告诉对方上线,然后才可能使用。 但 FaceTime 不需要,只要一方发起呼叫,对方就能收到 FaceTime 的提醒铃声(当然了,需要有网络环境)。不仅在 iOS 设备上如此,就算是 Mac 上用户都没有开启 FaceTime for Mac 应用,只要有人呼叫,你的 Mac 便会自动启动 FaceTime for Mac ,并发出提醒铃声。 屏幕快照 2010-10-26 下午02.30.00 (图:苹果在 FaceTime for Mac 的介绍中写到「你的 Mac 铃声响了」。) FaceTime 仅仅为用户省去了几个简单步骤,但易用性一下子就增强了很多。你可以想象一下,当你向父母解释如何用 FaceTime 的时候,「就像电话一样,只管呼叫或接听就好了」,他们很容易就明白了。但如果他们不太懂电脑,你向他们解释如何使用 Skype 或 QQ 视频恐怕要花费一番功夫了。 但 FaceTime 是如何实现「即便没有开启软件,也照样能收到信息」的呢?在 iPhone 4 或新的 iPod touch 上 ,它是通过 iOS 的通知推送(Push Notification)实现的——只不过不是一个弹出的小气泡。 但 Mac 电脑上的 FaceTime for Mac 呢? 一个德国的博主对 FaceTime for Mac 的软件包进行了分析,发现苹果已经将 iOS 的通知推送(Push Notification)功能引入到了 Mac 。 在 FaceTime for Mac 安装文件中有一个叫做「apsd-ft」的文件,它的文件名很可能是「Apple Push Service Daemon - FaceTime」的缩写,即「苹果推送服务后台程序 - FaceTime」(下图)。 facetimepush2-101022 苹果的技术支持论坛里也有用户反映,在试图卸载 FaceTime for Mac 的时候遇到了 Mac OS X 的提示 FaceTime for Mac 仍然「正在使用」,虽然此时 FaceTime for Mac 并没有开启。但在终止了「apsd-ft」的程序进程之后,卸载就能顺利完成了。 这表面,苹果确实将 FaceTime for Mac 的推送服务作为一个后台程序,一直在 Mac OS X 中运行,一旦有检测到有人呼叫就会发出提醒。 考虑到 Mac OS X 和 iOS 在 Lion 版本中更深入的整合,Mac OS X 的通知推送功能会不会应用到更多的 Mac 程序中呢?