近日发布的Windows Phone 7 Beta开发包在应用程序执行模式上有所改变,和上个社区预览版比较混乱的模式相比,在应用程序间的导航和切换上更加有条理,手机体验更加流畅。
WP(Windows Phone)的应用执行模式控制应用程序的执行周期,管理应用从启动到运行、从激活到停用、直到应用退出之间的状态变化。它被设计为一个运行快速、反应敏 捷的模式,为了达到这个目标,WP只允许前台运行一个应用,第三方应用皆不能在后台运行。这样防止了多个应用在后台同时运行,而影响到前台应用的运行效率 和体验以及电池使用时间。
除此之外,所有的WP设备都有一个“返回”按钮,这个按钮使得用户能够在一个应用甚至多个应用之间来回切换视图。这似乎是一个华丽的体验,和其他手 机不同,你可以从某个应用导航到浏览器,再到某个另外的应用,然后通过按“返回”按钮来回到之前运行的应用。这样用户便能在整个系统、多个应用中获得统一 的体验。无论是第三方应用,还是WP自带的。
呃,既然WP不允许后台运行任何应用,那我怎么可能用“返回”切换到之前的应用,回到之前的应用状态呢?唔……这就该是WP设计团队所谓的“墓碑 (Tombstone)”模式登场的时候了。
啥时候立“墓碑”呢?比如你正在用WP玩极品飞车,突然来了一个电话,这时候电话应用将占据前台,而极品飞车将由WP系统立起一块墓碑:应用并没有 被关闭,也没有在运行,而是自动保存了状态并等待唤醒。从系统设计的术语上讲,立墓碑的过程叫做Deactivating,唤醒或激活叫 Activating。当你打完电话,系统将自动切换回之前运行的极品飞车,而且返回之前的游戏状态,赛车不会因为你接了个电话而落后。
通过这种模式,WP让用户实际上获得了在多个应用中切换的能力,你可以回到后台的某个应用,但它在后台并没有在运行~这样便节省了设备的CPU运算 能力和电量消耗。而像某些即时通讯应用则可以通过“推送消息”这样的API来实现即时的消息接收。
当然,这样的体验和性能对应用开发者并不是免费的,应用开发者需要在应用立墓碑的时候记录当前的应用程序状态和相关数据,并且在应用随后激活时载入 数据和状态。
苹果的iOS4系统据称支持所谓的多任务,但有的用户升级到iOS4后发现之前安装的应用均不能支持所谓的多任务,因为iOS4的多任务特性也需要 应用开发者对应用进行开发来添加多任务特性。如果你希望拥有真正的多任务并行执行,还是乖乖地越狱了你的iPhone,然后用Backgrounder 吧。