How to increase the number of AIR mobile applications

目前APP Store里面使用Adobe AIR技术开发的iOS应用并不是很多,虽然其中不乏一些精品(例如曾经登上iPad排行榜榜首的机械迷城),但相对于APP Store里面50多万的应用总数还是略微少了些。

笔者认为使用AIR来开发应用,特别是游戏类应用,效率是肯定远远胜过使用Objective-C的,性能也并不差很多,况且还能不用怎么修改源代码而跨平台到桌面系统,Android系统和黑莓系统。尽管如此,为何目前AIR For iOS应用数量较少呢?Adobe又需要采用什么战略来增加这一数量呢?

我们不妨先来看看AIR的竞争对手之一,Titanium。Titanium几乎与AIR的战略一模一样,一开始AIR支持桌面的时候,Titanium也仅能支持桌面。后来AIR开始支持移动系统Android和iOS,Titanium也效仿之。但是目前使用Titanium开发的应用比AIR要多很多,据统计现在iTunes应用商店中的500,000应用中,有几乎五分之一是基于Titanium开发的。

Titanium是Appcelerator公司旗下的跨平台开源开发框架。一般来说,开发者采用JavaScript在Titanium上开发应用,不过与其他Web移动框架例如PhoneGap不同的是,Titanium独特的cross-compile的跨平台编译技术能将Web应用直接转换为各种平台中原生的应用程序。这一点大大增强了Web应用的性能,而且跟Adobe AIR技术非常类似——将Flash应用直接编译为原生应用。

Titanium的收费页面是:http://www.appcelerator.com/products/plans-pricing/

通过上面那个网址我们可以看到,Titanium的收费方式,主要是如下几种:

1. 出售额外的扩充模块Titanium+Plus,里面包含了像是BarCode的条码扫描功能、Apple的In-App Purchase服务、PayPal付费功能。

2. 数据统计分析服务,这一点类似Adobe的Omniture。不过遗憾的是笔者目前似乎没发现Omniture有统计移动应用的功能。

3. 专业的培训服务,主要还是培训Titanium。

4. 咨询服务和云服务,包括项目外包,类似于移动领域的IBM。

由此我们可以知道,Titanium的盈利方式与Adobe不太一样:Adobe主要靠出售Flash Pro或者Flash Builder盈利,价格比较昂贵,而且是一次性出售;而Titanium主要靠额外功能和咨询服务,按月收费,价格相对低廉很多。

以下我们来针对AIR技术和Titanium技术进行比较:

开发语言:

AIR在移动平台上只能采用ActionScript,Titanium使用JavaScript,据说还能使用Ruby,Python和PHP。根据编程语言排行榜可以知道这几门语言开发者数量远多于ActionScript,Titanium胜出。

社区支持:

AIR有着强大的历史悠久的Flash社区作为支持,不过Titanium虽然自己的社区不太强大,但是有很多其他的JavaScript社区。就社区和第三方资源数量来说,两者不相上下。

开发速度:

就游戏来说,采用Flash Pro来开发游戏,速度肯定快于直接编码。Titanium Studio是基于Eclipse的,并无绘图或可视化界面。AIR胜出,不过如果是其他类型的应用倒不一定。

应用性能:

目前就各种性能指标来看,ActionScript远胜过JavaScript。不过如果两者都编译成了本地应用的话,性能应当差不多。

支持平台:

AIR除了支持Android和iOS外,还能发布到黑莓APP World。AIR胜出。

是否收费:

Titanium Studio是免费的,而Flash Pro很贵。Titanium胜出。

由对比的结果来看,AIR的劣势主要在于收费方面。因此Adobe也许可以将Flash Pro和Flash Builder提供免费下载,然后提供相应的统计和咨询服务。另外也可学习Titanium,提供额外收费的AIR API。

还有一点,目前APP Store中各种非游戏的应用也很多,这种应用对于性能的要求不如游戏那么强烈,采用HTML和JavaScript开发非常方便快捷。而这一点Flex框架具有劣势,目前并没有一个轻量级的性能很好的版本(用Flash Pro来开发社交类应用肯定不如写网页来的快)。

不过改进收费和性能也许只能吸引新的开发者,如何利用目前已有的在浏览器上非常庞大的Flash应用(特别是各种小游戏和网页游戏)和Flash开发者呢?他们肯定已经有了Flash Pro等开发工具,不管是正版还是盗版。

要想把已有的Flash应用快速转变为iOS应用,还需解决以下几个问题:

1. 如何能顺利的通过苹果的审核机制?

2. 如何能快速打包为ipa包,却不影响在移动设备上的用户体验?

3. 如何能在已有的Flash应用中方便加入移动设备的本地特性?

第一个问题:如何能顺利的通过苹果的审核机制?

1. 首先苹果每年99美元的证书会吓跑很多人,Adobe不妨提供一项云服务来让开发者上传自己的Flash应用,然后利用Adobe的苹果证书发布到iOS上去,收入与开发者分成。

2. 如果开发者愿意自己购买证书的话,Adobe应该提供一些修改应用的最佳实践来让应用顺利的通过苹果的审核机制。

第二个问题:如何能快速打包为ipa包,却不影响在移动设备上的用户体验?

目前来说直接将SWF文件打包到iOS上面还是可以基本使用的,只是不能使用多点触摸事件。不过关于分辨率的问题还是得需要调整。

Adobe也许可以提供一个类似于PhoneGap Build的云服务来自动调整和打包上传的Flash应用,并自动发布到App Store上。

第三个问题:如何能在已有的Flash应用中方便加入移动设备的本地特性?

Adobe需要提供各种ANE的官方版本和相应的各种例程并放在醒目的位置,特别是最常用的一些功能例如GameCenter,Contacts等等。

除此之外,Adobe还应开展各种活动来大力宣传利用Adobe AIR技术进行iOS应用开发的好处,例如:

1. 举办各种移动开发编程比赛 ,特别是在高校里。(iOS开发证书对于学生是免费的)

2. 应该开放一个网站,展示目前所有使用AIR技术成功发布到APP Store上的应用,最好有一个排行列表。

3. 对于进入APP Store排行榜的AIR应用应该给予奖励,例如提供额外的API或者CS系列免费使用权。

4. 与目前已有的社交游戏和网页游戏厂商合作,提供咨询服务来快速转换Flash应用到iOS上。

5. 进行各种其他的线下活动来进行技术推广,例如交流会,技术沙龙。

6. 在各种场合下推广AIR技术开发iOS应用的优点。

总而言之,采用上述的方法,Adobe应该能够快速的增加AIR应用在苹果应用市场中的数量。不过这只是作者的一家之言,仅供参考。

Refer:http://www.xconomy.com/san-francisco/2011/11/22/for-a-boost-building-mobile-apps-web-developers-step-on-the-appcelerator

发表评论

电子邮件地址不会被公开。 必填项已用*标注