微信号:infoqchina

介绍:有内容的技术社区媒体

应用为iOS7升级收费是否合理?

2013-09-16 17:58 InfoQ

随着iOS7系统的发布,许多应用也推出了相应的升级版本,但是由于iOS7相比之前的系统变化很大,所以其中不少应用为iOS7所做的改动也较大,因此新版应用可能会重新收费,这种行为是否合理呢?


据报道,著名的 To-do 式应用 Clear,宣布将在 9月 18 日推出为 iOS 7 重新设计的新版本,之前已购买过 Clear 的用户,也要再次付费才能下载。相信随着iOS7系统的普及,越来越多的应用会选择新版本收费模式。


针对这种行为,国内社区也发表了自己的看法,知乎的工程师Rio认为,最大的问题是App Store没有提供付费升级模式:


这和普通软件大版本升级需要重新购买一样,当然是合理的。不合理的地方在于 App Store 不支持付费升级,老用户升级新版本的时候要和新用户支付同样的价格。


对于用户而言,老用户升级所获的的边际效用是低于新用户首次使用所获得的边际效用的,所以老用户付费升级应该获得一定比例的折扣。对于开发者而言,没有升级优惠对于留存旧有用户群是非常不利的,因为这意味着每次升级,你的已有用户群有更多的理由和动机选择其他同类型的软件。


在没有付费升级的情况下,不少开发者选择了另行开发新版本单独出售的损招。由于 iOS 的沙盒模型,不同的 app 间无法共享底层数据,也就意味着用户的旧有数据和设置不能有效迁移过来(除非你有独立于 iCloud 的第三方帐号体系),对用户体验具有极大的负面影响。


所以开发者们面对用户类似指责的时候,应该毫不犹豫的把这个问题扣到苹果头上,并且通过各种渠道向苹果提出需要支持付费升级的诉求。


Bill Cheng从实际的项目经验出发,认为收费是合理,因为从开发者角度看,这不是应用的简单升级,而是一个新软件。


这几天我刚好在做几个项目的iOS7化,我可以告诉你们,想让一个项目支持iOS 7,就算是仅仅为了通过iOS 7 SDK编译的程序不会出现严重的UI错误,就会是一个非常耗时的工作。


其他的暂且不说,常用的下拉刷新列表动作基本上就可以弄疯一排开发者——谁知道苹果会为了在UINavigation Bar下面透出列表内容,把列表的拉动显示范围都给改了;至于说Status Bar在iOS 7上显示的变化,我们可以暂且不谈;从viewWillAppear到viewDidDisppear这一系列UIViewController 方法顺序变化,我们也可以不看;就说某些用了UITabBarController的项目,一个新的显示高亮方法,没有文档说明的ScrollView拉动处理,还有透过内容显示处理,这些都够一个程序员玩上一下午了吧……外加还有在多线程状态下对于全局Instance资源锁处理的变化,多线程导致的莫名Thread Unsafe问题……


他举例手上在改的有两个项目,其个人觉得,从iOS 6 SDK更换到iOS 7 SDK,真的是一场浩大的工程。对于题目中提到的Clear这样的把各种Gesture深度的定制的应用来说,Bill Cheng觉得他们兼容iOS 7 SDK的工程量,可以说浩大基本上难以估计……


当然,上面所有的所有,还只是从程序项目兼容iOS 7的角度来说的,要想做到原生iOS 7软件的程度,在程序代码、UI设计和交互方面还有大量的内容需要配合iOS 7做出变化。大量的高斯模糊+半透明界面、大量的变速动画、大量的常规手势还有头疼的Control Center呼唤操作处理……要把这些做好,那就真的是做一个全新的软件的工程量了。


如果说我在前100天时间内做了一切的工作,把针对iOS 6和iOS 7的版本都给做好了,把他们融合在一起,这也会产生一个问题。首先,软件必定会比原来的大;其次,大量的针对UI的功能重复代码如果面临界面修改,那就不会是小工程,软件更新周期和维护成本直线上升;再之,如果有新的功能可以在iOS 7和iOS 6上由于系统原因导致实现不一致,会使得程序员工程量加倍;更重要的是,这个项目是由两个项目合并而成的,使得整体测试周期严重加长。


综上,无论从产品经理的角度,还是从程序员的角度考虑,针对iOS 6和iOS 7的最佳匹配方式都是:制作两个不同的版本上架App Store,同时鉴于当苹果开始推送iOS 7更新之后,使用iOS 6的人会明显下降(国内的某些老顽固除外),以后的新功能,自然是iOS 7版本支持更为重要,iOS 6在有空闲的情况下可以进行定期维护。


魏翔认为最理想的App Store软件销售模式应该是订阅:

付费升级新版对用户不公平:当初买软件的时候就说好以后可以免费升级的,开发者违背了自己的承诺。免费升级新版对开发者不公平:在同一个软件内适配iOS 6/7的复杂度和工作量巨大,还不如重新做一个单独版本。如果无法收费的话对不起自己的开发成本。所以最理想的App Store软件销售模式应该是订阅,让用户根据自己的使用时长付费。这样对开发者和用户来说都能做到相对公平。


比如Reeder这样的应用,如果用订阅模式,每年2.99~4.99左右的收费比较合理的。这种模式既保护了开发者有持续的收入来源,也让用户总是可以使用最新软件。同时开发者也只需要维护一个版本,降低了工作量。但现在它一次买断以后就无法继续向用户收费,只能出新版再卖一次钱,这无论是对开发者还是对用户都不是最优方案。

iOS7是iOS面世以来在用户界面上做出改变最大的一个操作系统。


iOS7抛弃了以往的拟物化设计,而采用了扁平化设计。苹果在重新思考 iOS 的设计时,更希望围绕 iOS 中深受人们喜爱的元素,打造一种更加简单实用而又妙趣横生的用户体验。最终,苹果优化了 iOS 的工作方式,并以此为基础重新设计了 iOS 的外观。


InfoQ的读者中,iOS应用消费者和开发者又是怎样看待这个问题呢?欢迎发表自己的看法!今年11月初即将举行的QCon上海2013大会特别组织了“移动应用案例分析”专题,几位讲师会奉献多场精彩的演讲,欢迎感兴趣的读者报名参会。


***********************************

本文来自InfoQ微信公众账号:infoqchina

1、回复“今日新闻”,查看今天更新的新闻;

2、回复“今日英文”,查看今天英文站的更新;

3、回复“文章 +关键词”,搜索关键词相关内容;

4、回复“QCon”,了解QCon大会相关信息;

5、回复“活动”,了解最近InfoQ组织的线下沙龙;

6、回复“架构师”,获取《架构师》下载地址;

7、回复“投稿”,了解投稿和加入编辑团队的流程。

***********************************

 
InfoQ 更多文章 Facebook如何实现PB级别数据库自动化备份 学术派Google软件工程师Matt Welsh谈移动开发趋势 Spotify为什么要使用一些“无聊”的技术? 妹纸们放假了,汉纸们做啥? 大多数重构可以避免
猜您喜欢 [收藏]史上最详细的Android Studio系列教程一下载和安装 User Agent 趣事谈 PHP程序员最常犯的11个MySQL错误 Android中实现View滑动的几种方式 安卓 OpenGL ES 2.0 完全入门(一):基本概念和 hello world