2010年1月19日星期二
对Android/iPhone多任务执行特性的理解
很久没动笔了 今儿看到peter的一篇博客《Android 研究心得 - 集市的复兴》 顺带总结了一下自己的理解 回复了一下
回复长了点儿 顺带也贴到自己的博客上好了
我觉得多任务分两类 一个是允许后台任务执行 一个是不允许后台任务执行(只是保留状态)
iPhone支持部分自带应用后台执行(音乐播 放/闹钟) 但不允许其他第三方后台执行 貌似也不支持任务自动保存状态后台化
偶的理解有两大原因:
1) 多任务切换/管理的用户体验不易简化
iPhone一大成功因素就是它超简单,不需太多设置和管理,哪怕没用过计算机的小孩都可以轻易上手来玩游 戏。相比较而言,现在看到的多任务管理方案都不够简单:如果一个超级菜鸟用户在不知道、不理解的情况下,轻而易举的就有可能误开十几个后台应用,这也许不 是用户的问题,而是特性做的不好的问题。苹果没有琢磨出一个特别简单、对用户友好的体验方案,索性就耍赖,直接砍掉多任务特性。
2) 电池问题
如果误操作只是带来切换、管理问题,也许用户还可以忍受,大不了普通用户不切换、不管理好了。但如果允许后台任务是活动的,导致电池在不 知情的情况下消耗更快,这个后果可能是用户不接受的。
由于2)的原因我赞成iPhone在电池问题没有很好解决之前,禁止后台任务执行。 暂时可以通过提供一些迂回的间接方式(如已经提供的Push Notification)来缓和这个问题
由于1)的原因偶也基本接受 iPhone不支持通用的多任务特性
然而,我期待今后的iPhone版本支持受限状态保存和切换。举个例子:现在不少游戏也在退出的时候 (比如打游戏时来个电话)保存状态,在下次启动时自动恢复。偶没开发过iPhone应用,估摸着是游戏开发商自己做的。这种电话进来时自动保存当前活动任 务状态,电话结束后立即恢复保存的任务状态,这种受限切换对用户而言应该容易理解,OS提供这种服务可以简化应用程序的开发。
至于 Android提供多任务,俺的理解是这和高级不高级没太多关系,因为Android多任务做的一点儿也不简单,电池损耗问题更是没有解决。提供多任务特 性更多的是出于差异化产品的需要:提供iPhone不提供的特性,像多任务/开放应用市场,可以很快赢得对iPhone不满意的用户,是走另一种途径。至 于哪种途径更好,俺不清楚,时间会告诉俺们的。

没有评论