在应用市场早期阶段,app还处于功能为主的时代,用户希望一款应用能尽可能多地满足自己的需求,开发者由此不断扩展应用的深度和广度,而这种用户需求带来的却是越来越臃肿的app,在某种程度上会对用户体验造成伤害。随着市场发展的日渐成熟,行业开始反思这个问题,尤其是在用户由功能性需求过渡到体验式需求后,很多应用开始专注于通过一款轻型应用来打造极致的用户体验。 轻型应用必然是只专注于解决用户某些特定的问题,这就是应用的核心功能,而其他功能怎么办呢?很多开发商(开发者)想到把此前功能丰富的应用拆分为几个应用。比如Facebook将主应用通讯功能拆分为Messenger,Foursquare将签到功能拆分为Swarm,由此形成了一个个以核心应用为主的应用体系。 "app constellation"(app体系,app 星座体系)是投资商Fred Wilson提出的一个概念,他在博客中表示: 把大量功能堆积到单个应用中并不是移动端上正确的做法。拥有一个彼此交互的app体系看起来是个更好的方法。并且很多领先的移动应用公司都选择了这个方法,值得注意。 应用体系是个不错的主义。基于你的用户基础、功能集合或者是这两者的组合会超出你最初的目标。提供由两个、三个或者更多应用组成的应用体系来实现你最初的愿景,而对于投资者来说,这是一个"健康"的标志。 Google, Dropbox, Facebook以及最近的Foursquare都是应用体系的驱动者。此外,Foursquare的应用体系实际上是把核心应用拆分为Foursquare 和Swarm才形成的。其他一些应用的体系也是由此而来,所以这是个比较重要的方法。以下一些来自于这些行业先锋的最佳实践: 注意:把一个应用拆分为应用体系是否有意义,这一点并不包含在以下内容中。推荐你阅读下:Steven Sinofsky’s thoughts on bundling and unbundling software ,或者听下recent a16z podcast,看看有什么额外的收获。 务必提供一个过渡期 如果你将应用的某项功能迁移到另一个应用当中,就比如Foursquare将签到功能拆分给Swarm,你必须以优雅的方式过渡,并留给用户一个过渡期。在你要求用户下载新应用之前,要确保用户理解新应用是干嘛用的,以及新应用如何更好地满足用户的需求。该方法的额外受益之处是了解任何新应用中瑕疵和不足。刚发布时,Swarm的位置识别功能似乎要比Foursquare差一点。 提供自动登录 首次启动应用时,要保证这样一种情况,如果用户已经安装了该"星系"中的一款应用,那么新应用应该可以自动使用用户在其他应用中的信息进行认证或者登录管理。这样,用户就能从"星系"中的其他应用获益,无需再次注册或者登录。也能加快新应用的市场渗透速度。 不要强迫用户共享账户 虽然开发者可以将自动登录作为一个选择,但也要提供一个方法允许用户使用不同的账户登录,或者根本就无需使用账户。尤其是在app彼此提供互补功能的情况下,用户可能不大想共享账户信息。谷歌的应用就是很好的例子,比如YouTube和谷歌地图。谷歌的核心应用也是一个例子,无账户要求可能会是一个很好的方法。 不要假定他们会使用其他应用 最初我把这个描述为"不要强迫用户使用其他应用"。Foursquare 和Facebook都采用了这样一种方式,下载应用否则将无法使用某个特别的功能。 应用商店中,Swarm和Messenger的大量消极评论支撑了我最初的描述,你也可以看看Rene Ritchie在iMore上的一篇短文: "Focus is fine. Dedication is fine. But scattering functionality across a bevy of apps isn’t necessarily either of those things. It smacks of sprawl, which is neither focused nor dedicated. It’s attention hoarding. It’s avarice. And as a strategy it may backfire." Rene Ritchie认为一些公司拆分应用不是专注或者突出重点,而是像植物一样蔓延,他认为这种做法属于开发者的贪婪,作为一种策略,它可能是适得其反的。Foursquare和Facebook可能像Ritchie描述的那样,是囤积注意力或者贪婪。他们可以失去一些用户,并忍受短期内的差评,不过他们相信这是一项长期的正确的产品策略。 这种做法是双面性的,一方面你会失去一些用户,如果你强迫他们下载新app来使用此前存在的一些功能;另一方面却可以交叉推广app体系。比如Dropbox在其核心应用的"Photos"标签下强调Carousel,但没有进行到处推广。 "app体系"内的应用是可交互的