Zheming 的个人资料享受生活日志列表留言簿更多 工具 帮助
    4月16日

    苹果为什么要做 Push Notification而不是真正的“后台运行”?

    iPhone 是一个革命性的移动互联网终端,其 Multitouch 多点触控操作是在鼠标之后的又一革新。但是,在 iPhone 上迟迟不见后台运行程序的支持。虽然,从技术的角度来说,iPhone OS 在系统架构上和 Mac OS X 如出一辙,同样也支持后台程序(比如 Apple 的电话程序等,都是可以在后台运行的),但是 Apple 是从政策上不允许第三方应用程序在后台运行。其理由是技术上的“第三方程序在后台运行会消耗大量的电能,影响设备的待机时间”。但是我们依然可以看到,主流的掌上设备操作系统无一例外的支持第三方程序的后台进程,也不见得这些设备的电能受到如此大的影响。可见这个技术问题,也许只是一个托辞,那么,Apple 为什么要做 Push Notification 呢?

    从我的理解来看,Apple 在 iPhone 上市初始阶段,仅允许第三方程序使用 Web App 的方式运行在 iPhone / iPod touch 的 Safari 浏览器中,并为 Safari 浏览器(确切的说是 Webkit 引擎)新增了很多特性来支持这些仅为 iPhone 开发的 Web App。并且,有一些有意思的增强可以在 Apple-Specific Meta Tag Keys 这个页面中找到。其中使用 “apple-mobile-web-app-capable” 这个 meta-tag,可以让 Web App 在 Safari 中以全屏的方式运行,这,难道不就是一个 WebOS 上应用程序的样子?

    从这里再联想到 Push Notification,Push Notification 是要求开发者自己有一个 Web 服务器的,并且可以使用 Push Notification 服务来给 Apple 的服务器发送通知消息,之后这个消息会被用推送的方式转发到 iPhone/iPod touch 设备上。可以想见,这个方式,是可以同时让本机的程序,和 Web App 都可以采用的通告方式。反而,让 Web App 这样一个基于 RESTful 的 HTTP 协议下的产物在后台运行,是不现实的。

    结论很简单,这一切都是为了让 iPhone/iPod touch 这个 Apple 下一代的掌上明珠,可以持续站在 Web OS 时代的最高峰。iPhone 是一个革命性的移动互联网终端。

    评论

    请稍候...
    很抱歉,您输入的评论太长。请缩短您的评论。
    您没有输入任何内容,请重试。
    很抱歉,我们当前无法添加您的评论。请稍后重试。
    若要添加评论,需要您的家长授予您相应权限。请求权限
    您的家长禁用了评论功能。
    很抱歉,我们当前无法删除您的评论。请稍后重试。
    您已超过了一天之内允许提供的评论数上限。请在 24 小时后重试。
    因为我们的系统表明您可能在向其他用户提供垃圾评论,您的帐户已禁用了评论功能。如果您认为我们错误地禁用了您的帐户,请联系 Windows Live 支持部门
    完成下面的安全检查,您提供评论的过程才能完成。
    您在安全检查中键入的字符必须与图片或音频中的字符一致。

    若要添加评论,请使用您的 Windows Live ID 登录(如果您使用过 Hotmail、Messenger 或 Xbox LIVE,您就拥有 Windows Live ID)。登录


    还没有 Windows Live ID 吗?请注册

    引用通告

    引用此项的网络日志