移动终端应用软件开发技术探讨*
2013-02-19魏颖琪林玮平杨少龙
魏颖琪,林玮平,杨少龙
(中国电信股份有限公司广东研究院 广州510630)
1 引言
移动终端从只具备基带处理器(baseband processor,BP)功能的手机发展成同时具有基带处理器和应用处理器(application processor,AP)功能的智能手机,或者采用BP和AP两者合一的系统芯片(system on chip,SoC)的智能手机。BP上承载的是移动通信类业务,AP负责大部分应用程序的执行,手机的价值逐步从BP转移到AP,而终端平台厂商、手机制造商、电信运营商、硬件厂商和移动应用开发者共同推动了移动应用的创新。工业和信息化部电信研究院(以下简称工信部电信研究院)发布的《移动互联网白皮书(2013年)》指出:“据统计,目前全球移动互联网用户数已达到15亿,在起步的5年内用户扩散速度是桌面互联网同阶段的2倍,移动应用整体数量在3年内超过了140万。”百万级的移动应用数,使得移动开发的竞争环境日趋激烈,已从“蓝海”变成“红海”。移动终端应用开发要获得成功,需要充分洞悉移动应用特点,了解技术发展新趋势,寻找创新点,提高开发效率。
2 移动终端应用软件特点
微软在2003年发布了Windows Mobile第一个版本,将应用作为移动终端的卖点,但它仅将移动应用作为桌面应用的小屏化,直接将桌面的用户体验移植到移动终端,忽略了移动终端在交互范式、应用场景、商业模式等方面的特殊性,错过了成为移动软件主导者和领军者的机会,最终淹没在历史中,被Windows Phone取代。
2.1 交互范式
移动终端有不同于桌面电脑的信息输出特点,且提供了桌面电脑无法比拟的信息输入方式和信息输入内容,开启了新的应用创新范畴。
移动终端键盘从物理键盘发展到虚拟键盘,受到输入速度和屏幕尺寸的限制,要求信息交互简练。人们在移动状态(行走,汽车)和静止状态下阅读屏幕的不同,导致移动应用界面的布局、字体大小、锐边、对比度等要求不同。移动终端存在多种尺寸屏幕需要移动应用适配,典型的例子是应用分别针对iPhone和iPad适配。
移动终端信息输出格式发生变化,桌面输出是屏和声,手机输出则包括了灯(LED信号)、屏、声、动(震动)。桌面的键盘、麦克风和图形界面,发展为智能终端的触摸屏、语音、手势和自然用户界面。
移动终端具有触控、摄像头、内置麦克风、陀螺仪、射频识别(RFID)等传感器,提供地理位置、所处环境(温度、高度)、四周环境(摄像头)、用户动作(手势、摇晃、转动)、非接触ID(二维码、NFC(near field communication,近距离无线通信)、RFID)等新信息。充分利用这些信息将使人机交互更为便捷,例如仅从联系人和好友的设置而言,就可以有从手机地址本导入、二维码扫描录入、语音录入、摇动等多种实现方式。
2.2 应用场景
智能终端的移动性和私密性改变了用户使用场景,随着应用的不断推出,移动终端的作用在延伸,从单纯语音通信工具,演变为个人生活助手。典型的移动应用场景包括以下3种。
(1)碎片时间的填充
满足用户“我有10 min的空闲,请帮我填充这10 min”的需求。如游戏、阅读类应用和音乐/视频播放类应用,又如快速、总结性的资讯类应用,用来填充每个人每天的时间小窗口。
(2)随时随地分享和沟通
如即时通信、微博、图片/音乐/信息的即时分享类应用,改变了人们相互沟通的范围和模式,改变了人们的社交生活和资讯获取方式。
(3)利用传感器信息输入,扩展用户使用场景,开启新的应用范畴
典型的为定位应用,获取与地理位置相关的信息,如导航、获取附近商户优惠信息等应用。
上面的应用都与人们日常生活相关,具有浓厚的本土化特色,由移动互联网厂商主导,逐步呈现平台化、能力化趋势,向第三方开发者开放。
应用场景会在今后的一段时间内呈现个性化和多样化趋势,包括针对某类群体的特殊场景,如个性化的实用工具类、教育类、心理慰藉类、企业信息化移动应用等,推动的主力可能是某个垂直行业的领先者;还有就是在已存在的移动平台和开放能力平台上发展的多元化应用,如从单一到多元化的游戏类型。随着移动终端新技术的引入,将会存在新应用的爆发点,如虚拟现实(virtual reality)、视控等人机交互技术的发展,机器的智能化将驱动人机交互逐步向人人交互发展,移动互联网应用的典型应用场景将会有更大的变化;移动终端软硬件的提升将推动高清视频、3D游戏的发展。
2.3 商业模式
应用商城是目前移动终端应用常见的组织形式,行业巨头纷纷根据自己的优势特点,构建围绕应用商城的生态体系,例如以苹果为代表的将操作系统作为核心的应用商城,以Facebook为代表的将虚拟化社区作为核心的应用商场,还有以运营商为代表的将通信能力、套餐、渠道作为核心的应用商城等。应用商城的目的是吸引更多应用开发者加入,聚集人气,黏住客户,最终达到商业目标。而对于应用开发者而言,通过应用商城的巨大用户空间和分成模式,降低了应用创新的门槛,但从众多的第三方应用中脱颖而出,并不是一件容易的事情。也有中小规模的企业通过已有的客户积累或者技术优势,结合移动化,创造出商业价值很好的产品(如针对行业的信息化应用),这种产品并不需要依托于应用商城模式。
3 移动终端应用软件开发关键
移动应用的开发者已不再是单纯的程序员,他们是移动创新的推动者、设计者、实现者和实施者。开发者考虑的不仅是代码实现,还包括如基于原生应用还是Web应用进行开发,采用哪种盈利模式或目标,是吸引眼球还是等待风投,如何进行应用营销推广,如何让真实客户测试Beta版本,如何获得用户反馈等。他们的主要关注点不仅是程序开发,而且是整个移动应用生命周期,包括规划(需求和设计)、开发、发布、盈利和用户支持等各个环节。
开发移动应用,需要解决开发什么、基于什么进行开发以及如何进行开发的问题。本节将针对这些问题逐一进行探讨。
3.1 寻找创新领域
应用商店已经挤满了数十万计的应用。根据The Sociable的新数据,Google Play的应用数量将在2013年6月突破100万。“明星应用”和“一夜暴富”的新闻越来越少,应用之间的竞争日趋激烈。通过了解新技术发展趋势,充分利用传感器信息输入所带来的新体验,扩展用户使用场景,有助于寻找移动终端应用创新领域,在竞争相对少的地方,发掘市场潜力。
(1)移动支付
移动支付有如下两种方式:
·电子钱包,提供快捷小额支付;
·网上支付,由金融机构通过信息网络提供服务,如支付宝和网银,用户可以享受到方便、快捷、高效、可靠的全方位服务。
移动应用可在任何需要的时候使用便捷支付服务,不受时间、地域的限制,实现3A服务,即任何地点(anywhere)、任何原因(anyhow)、任何时间(anytime)。同时移动支付也是实现应用货币化的途径之一,提供应用内购买和免费使用增值升级的支付方式,不再局限于对应用商店的依赖。
(2)物联网
物联网被称为把任何物品,通过射频识别、近距离无线通信、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议与互联网连接起来,进行信息交换和共享,以实现智能化识别、定位、跟踪、监控和管理的一种网络。在物联网的产业链中,感知与识别技术是核心基础技术,近年来,传感器、NFC等感知与识别技术与移动终端的结合,为移动终端应用带来新特性。
(3)增强现实
增强现实(augmented reality,AR)是在虚拟现实技术基础上发展起来的一种综合计算机视觉、图形学、图像处理、多传感器技术、显示技术的新兴计算机应用和人机交互技术。增强现实技术利用计算机产生的虚拟物体或文字信息与用户所观察的真实环境进行融合,将虚拟的信息应用到真实世界,真实的环境和虚拟的物体实时地叠加到同一画面或空间中,从而拓展和增强用户对周围世界的感知。
iPhone上出现最早的增强现实应用Layar,使用手机内置的GPS收集附近区域的信息,比如餐馆或酒店,在手机屏幕上加载图像和信息以叠加的方式显示给用户。当把手机对准一栋建筑物时,Layar会告诉用户这栋高楼里有哪些公司在招聘,或者自动在Flickr搜索相关图片或在维基百科中搜索它的历史。
随着AR技术跟手机结合的发展,虚实结合、高度交互性以及三维定位功能,将极大程度地调用用户参与的热情,还原互联网的真实感,让互联网跟真实世界的关系更紧密。
(4)其他
传感器的引入赋予了移动终端生命,让移动终端有了触觉、味觉和嗅觉等感官。动作传感器可以为移动终端应用带来不同的操作体验;指纹传感器可以使用户不再受遗忘密码、密码被盗的烦恼,同时提高了手机终端支付应用的安全性;气压传感器可以为特定人群实现应用,如登山爱好者用来测量海拔高度、天气预报信息等。
移动终端越来越深入地介入人们的生活,伴随人们即使不是全部也是大部分的时间,有能力对用户绝大部分的行为和互动进行监控、理解、通信和反应。传感器可以采用外设的方式,不一定在移动终端内集成,可满足小众用户的特定需求。例如医学传感器,利用手机的随身携带性、移动性和私密性,实现随时跟踪、数据记录和同步上传、数据分析和帮助用户制定康复计划。
3.2 移动开发在Web应用和原生应用中博弈
移动终端操作系统从功能手机时代的软件平台变为智能手机时代的应用平台。移动应用为平台增添附加价值,使平台吸引更多的用户,这样就会有更多的需求,吸引更多的开发者提供更多的应用。由此形成了正向反馈的网络效益,将用户和开发者吸引到平台周围,形成强大的生态系统,改变原有整个移动行业的格局。而开发者对平台的选择实际也是对平台的一种投资,例如学习开发语言,熟悉开发工具,购买开发环境,是金钱和时间的投入。
3.2.1 原生应用格局
Android和iOS在智能手机出货量上占据绝对优势,拥有最大的用户覆盖范围,提供最大的收入潜力,吸引最多开发者在上面开发应用。
2012年10月24日,苹果CEO库克表示,苹果App Store应用数量已经超过70万,其中27.5万为iPad专用应用。与此同时,Google Play在2012年10月的应用数量也达到了70万[1]。近年来,大量亚洲开发者涌入移动开发领域,由于更偏向于Android平台,使得Android应用数量逐渐达到并超越iOS。工信部电信研究院的数据显示,2013年1-2月,我国Android手机出货量占同期智能手机出货量的88.4%。iOS和Android得到用户和开发者的认可,依靠成熟的产业链,占领市场高地,提高了竞争门槛。其他平台要获得消费者青睐,说服用户放弃熟悉的用户界面和使用习惯,需要更加优秀。
为了打破两大生态系统的壁垒,微软公司采用补贴等手段吸引和培养开发者。2013年2月微软公司在世界移动大会上表示Windows Phone Store的应用数量已超过13万。微软的Windows 8&Windows Phone 8都采用Metro界面,其战略目标是为PC、平板、智能手机提供统一的用户体验,允许它们之间实现有效的代码共享。微软将可能成为除Android和iOS外的第三大力量。但就目前而言,13万的数目仍与Android和iOS有相当距离,短期内不会对两大平台的垄断地位形成挑战。而且,由于微软为应用开发提供资助,开发者更多是将已有的Andriod/iOS应用移植到Windows Phone平台上,而非进行创新。正如移动分析师Andreas Constantinou指出,“平台不能买到开发者的钟爱,只能播下种子[2]”。
主流平台采用的开发语言、开发环境、平台应用商店、应用安装与应用商店关系,见表1。
表1 主流原生应用平台的开发情况对比
原生应用通常有多个平台版本。一般首先推出iOS或Android版本,或者两者同时推出。在适配iOS和Android之后,才考虑移植到Windows Phone。开发者需要针对不同平台进行开发,而这三大平台的开发语言、开发环境各异,难以实现代码共享。因此,常面临原生开发和跨平台开发的选择。
3.2.2 跨平台Web应用开发
跨平台Web应用开发有效地解决了多平台开发问题。它以Web为运行环境,采用HTML5技术进行应用,一次开发能够运行在不同的底层操作系统上。
HTML5引入了离线存储、2D图像能力、音/视频、访问手机摄像头和传感器等技术革新,增强互动性。Web应用并不仅限于HTML5技术,还可以有其他的技术,例如通过WebGL提供3D图像效果,弥补HTML5在3D上的支持不足。但在广义的HTML5中,通常将这些相关的Web技术也纳入HTML5范畴中。
Web平台有如下两种方式:
·Web中间件方式;
·Web操作系统方式。
前者是将系统中的Web引擎作为运行环境;后者中整个系统运行环境都是Web,所有的应用都基于Web。后者以Firefox OS为代表,它是全部使用Web技术编写的操作系统,正在尝试以Web为中心构建iOS和Android的替代品。然而,Firefox OS仍处于商业化早期,远未被视为主流操作系统。目前,跨平台开发只需考虑前者。
越来越多的内容提供商选择在HTML5而不是原生应用上编写和发布自己的应用。一些知名出版商放弃原生应用而转向移动Web,如英国金融时报和MIT技术评论杂志。采用HTML5有以下优点:
·可将Web应用更快地推向市场,兼容不同平台(如Android、iOS平台),兼容不同种类终端(如桌面、平板、手机、联网电视),具有最广泛的用户覆盖率;
·平台技术降低开发成本,实现代码共享,无需在不同操作系统上进行测试,HTML5提供良好的容错设计,又名“故障弱化”,举例来说,如果某些浏览器不支持canvas,就会返回,不存在连接失败,降低设备和平台碎片化对应用的影响,减轻适配调测工作量[3];
·业务逻辑在云端,便于版本全面升级,避免版本碎片化;
·通过Web方式云API,开发者可使用互联网厂商以及运营商的云端能力,将第三方能力迅速、便捷地延展至移动领域,集成更为复杂的应用。
3.2.3 Web应用和原生应用对比
以HTML5为基础的Web技术发展迅速,但仍未建立完整的生态系统,尚未能在平台级别上与强大的Android或iOS竞争,目前更多地作为一种应用开发技术。
原生应用和Web应用各有特点,仍将长期共存,Web应用尚不能替代原生应用。采用哪种技术,需要根据业务需求进行选择。作为普遍原则,对于需要使用系统底层功能、直接在系统平台上编程以及要求具备优秀用户体验的应用,适合采用原生方式;对于侧重内容呈现,主要依赖云端能力,特别对于原有桌面业务是在移动领域的延展,适合采用Web方式。实际取决于应用是对系统深度优先还是对用户广度优先的选择,是依赖于终端能力还是云端能力的选择。例如,复杂和精美的游戏适合原生应用,报刊杂志等出版类应用适合于Web应用。
除此之外,必须清醒地意识到,虽然HTML5做了很多革新,但在功能、性能和安全方面仍无法与原生操作系统相比,具体介绍如下。
·在标准支持上,移动浏览器对HTML5的支持滞后于标准的发展,各移动浏览器对标准的支持程度不同,存在碎片化现象。
·在功能上,新系统功能首先在原生系统中实现。在支持原生应用API访问方面,HTML5永远落后一步,而平台厂商永远比跨平台工具和浏览器厂商早一步,这使得原生应用在使用新功能方面占据先机。
·在性能上,由于Web开发所使用的HTML、CSS和JavaScript都是脚本语言,需要Web运行环境进行解释,比二进制执行代码或者中间语言JavaBite代码的执行效率要低,因此Web性能低于原生应用是无法逾越的屏障。但随着应用处理器性能的提高,将减少对用户体验的影响,甚至实现用户体验上的无差别。
·在安全上,浏览器上多个页面均属于同一浏览器进程,不同Web应用之间如何进行安全保护成为问题。iOS和Android的安全策略都将应用视为单个用户在沙盒中运行,而沙盒安全保护策略是针对进程实施安全防护措施。这个问题在桌面浏览器中通过多进程方式解决,但在目前移动终端中普遍采用的Webkit引擎并不支持多进程。
·在生态系统上,应用商店是重要的生态系统控制节点,控制了应用打包、定价、发布、计费、市场、销售跟踪和应用更新等多个步骤。Web应用发布有两种方式:一是将Web应用封装在原生应用中形成混合应用,打包成原生应用在应用商店进行发布;二是以页面方式向用户提供服务,可以下载到本地,也可以是Web链接的免安装方式,这与原生应用在应用发布、分销、盈利、更新上都存在本质差异,若选择页面方式,开发者需要考虑是否符合所需的商务模式要求。
3.3 创新性移动应用的开发关键
工信部电信研究院发布的《移动互联网白皮书(2013年)》指出:移动互联网把整个ICT产业拖入快速发展通道,产业迭代周期由PC时代的18个月(摩尔定律)缩减至6个月。众多企业为适应产业周期的快速迭代,移动互联网产品/服务生命周期的各个环节都相应缩短,由此引发业务技术创新、产品研发和推广、供应链管理、知识产权保护等所有关键环节的变化。
由于产业周期的变化和市场竞争压力,如何将应用或业务快速推向市场成为移动开发的关键,也就是开发者常说的敏捷开发。敏捷开发强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队,能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发中人的作用[4]。然而,创新性移动应用的最大特点是未来市场的不确定性和难以预测性,在开发中,采用依托于敏捷开发的核心精髓的循环迭代流程,帮助开发者实现高效率、低成本,尽可能贴近市场需求。
3.3.1 移动应用开发的常见误区
移动应用开发周期缩短,突出一个“快”字,但开发者也常被“快”所误导,常见的错误主要有以下两种。
·以版本更新速度来衡量敏捷开发,认为版本更新越快,越能体现敏捷开发,甚至每周或每天都有新版本。由此,容易造成因过分追求“快”而忽略产品质量和版本管理,甚至在未经充分测试的情况下,将不稳定的产品推向市场,结果在用户使用过程中,出现程序崩溃或功能错误的现象,不得不频繁升级版本进行补救。任何牺牲产品质量换来的“速度”实际都是欲速不达。
·通过节省文档编写时间来加快开发进度,甚至零文档交付。移动应用开发需根据实际项目团队分工、合作团队间界面来决定文档的多寡,让文档成为开发者的帮助,而不是开发者的负担。开发文档无需像软件工程那样有整套的概要设计文档、详细设计文档、模块设计文档等,但仍必须清晰描述所提供的功能、用户使用场景、程序架构和关键技术,如此才能在人员流动情况下,在多版本开发和维护中,对整个项目有全盘了解和认识。
由于开发人员在代码编写中花费较大精力,常将“快”误认为程序实现的速度,导致了这两大常见的误区。
3.3.2 创新性移动应用的开发核心
移动应用开发的“快”不是指代码编写速度,而是对需求的快速和正确把握,准确抓住市场,在时间窗口内快速推出产品。
移动应用开发者同时也是创新挖掘者和产品设计师。创新性应用开发面临未来市场不确定性和难以预测性。开发者最初通常根据自己的设想来制定需求,很可能与大众真实需求存在偏差。即使进行了市场调研,由于人们只能对已知事物给出准确估计,对未曾使用过的应用,未曾尝试过的使用场景,只能根据想象而非经验进行预测,建立在未经验证的预期设想上而非事实基础上的调研结果无法准确预测未来市场情况,这导致创新性移动应用开发在初期中难以准确地把握需求。
有好的想法不一定有好的市场,有好的市场也不等于能够长期持续。2013年3月,谷歌宣布将于2013年7月关闭RSS订阅服务Google Reader,由于Twitter以及聚合阅读应用Flipboard等服务的兴起,传统RSS订阅服务的使用量呈现下滑[5]。此前,谷歌已关闭过多项服务,这些服务最初都预计有良好的市场前景。
如何准确地获得市场需求,是减少创新产品的市场预期和实际效果偏差的关键,是创新性移动应用开发的核心。
3.3.3 创新性移动终端应用的开发流程
在创新的移动应用开发中,由于市场的不确定性,要以用户为最终目标,通过需求—开发—验证的迭代方式,不断地学习,逐步了解市场。创新性移动终端应用开发流程如图1所示。
图1 创新性移动应用开发流程
创新性移动终端应用开发流程分为两个阶段:第一阶段为探索阶段,解决创新性移动应用开发所面临的市场不确定性问题,以需求为导向,通过学习需求、实现需求和评估需求的需求迭代,探索市场真正的需求所在;第二阶段为完善阶段,通过第一阶段明确需求后进行产品的逐步完善,添加小功能,修复程序错误,进行功能迭代。由于第二阶段是常规的产品开发阶段,下面将重点论述第一阶段。
(1)第一阶段:探索阶段
探索阶段是创新性应用开发所特有的阶段。最初,开发团队根据个人所需、调研、场景设计等制定需求,并据此进行设计。由于不能准确预测市场反应,最初版本应尽可能简洁地体现核心功能,这样做的目的有如下两个。
·减轻实现需求阶段的工作量,缩短开发周期,以最快速度投入市场并获取市场反馈。需要特别注意,简洁不等于不完善,只是对次要功能和附加功能的简化。应用必须完整地呈现核心功能,必须具备完整的用户体验。
·避免在市场不确定情况下走得太远。最初需求建立在未经证实的假设上,未经市场真实验证,一旦发现市场反应有显著偏差,要对需求或设计进行大幅度调整。提供简洁核心功能可有效避免前期浪费太多的成本和精力,降低投资风险。
接着,开发团队进行需求实现,包括代码编写、调测、封装、测试等环节,完成产品后投入市场。在这个阶段,特别注意不要图“快”而忽略应用质量。应用质量直接影响用户体验,应用稳定性是良好用户体验的基本要求。
产品发布后要尽可能收集用户反馈,获取市场信息,通过对市场学习重新修订产品需求或设计。之后根据修订的新需求或新设计进行开发,再推向市场,再根据市场反应修订需求和设计,如此迭代循环,不断地通过对需求的学习—实现—评估,以逐步趋近的方式寻找真正满足市场需求、最合适的用户使用场景以及最佳的人机交互和用户体验。
Instagram是典型的以探索式需求为导向的创新性移动应用开发例子。Instagram是一款以快速、美妙和有趣的方式,将随时抓拍下的图片分享彼此的应用,可在iOS和Android平台上使用。Instagram开发团队的最初想法、需求是HTML5定位应用。开发团队根据需求进行设计并实现,将HTML5的移动Web应用推向市场,让用户为社交活动位置“签到”,制定计划和赚取积分。然而,在他们进行需求评估时,发现照片分享能有效地促进应用使用。开发团队从实际的用户行为中进行学习,重新修订需求,转为关注照片分享,并建立iOS原生应用,而不再继续使用HTML5技术。通过学习需求、实现需求、评估需求的不断迭代,产品不断发展。最终,在2012年10月,Facebook以总值7.15亿美元收购Instagram,在2012年9月,Instagram注册用户数已经突破1亿大关。
(2)第二阶段:完善阶段
通过不断探索学习,明确需求后,进入第二阶段,即完善阶段,是常规的应用开发阶段。每次新增的改进需求,包括小功能增加,操作系统新版本适配,兼容其他平台(如移植到Windows Phone),新硬件设备适配(如适配iPhone5屏幕分辨率),根据移动互联网现状增删第三方应用联动(如增加与最热门社交网络的分享),此外,错误/崩溃修复是需求改进的重点。
通过需求改进,实现产品跟踪和支持,在每个新版本中增加小功能,修改原有版本的错误,提升用户体验,让产品逐步成熟,不断完善。
3.3.4 利用云端存储/计算能力和云功能
随着移动应用要求功能的越来越多,包括存储能力(如图片存储)、计算处理能力(如语音分析),单靠终端难以支撑,需要借助云技术,云技术提供了容量更大并可持续扩容的服务处理能力。更重要的是通过云API,开发者利用已经打包封装的功能,将第三方强大的网络能力应用到自己的程序上,极大地减轻开发工作,将应用作为面向用户的前端和界面,满足和扩展可能的使用场景。
开放平台、开放资源是近年来非常热门的词语,无论是老牌互联网企业、手机制造商、电信运营商,还是新兴移动互联网企业,都希望能吸引更多第三方开发伙伴加入自己的开放平台中。开放平台是平台提供商将自身资源通过接口向第三方开放,第三方开发者可以通过运用和组装平台接口产生新的应用,并且新的应用能在开放平台上运营。其核心价值在于通过平台供应商与第三方应用的互利互惠,提高最终用户的黏度。
以下简单列举几个有代表性的开放平台,新浪微博开放平台基于新浪微博海量用户和强大的传播能力,为第三方合作伙伴服务提供了超过200个数据接口,包括微博内容、评论、用户、关系、话题等信息;腾讯将多个产品线进行了开放,其开放平台家族包括了依托QQ空间与朋友网的社区开放平台、打通QQ客户端的Q+开放平台、基于腾讯微博的开放平台、腾讯无线游戏开放平台等。淘宝基于淘宝各类电子商务业务提供了开放平台,提供外部合作伙伴参与服务淘宝用户的各类原材料,如API、账号体系、数据安全等。
对于应用开发者,如果能够善用这些互联网巨头提供的资源,将对应用开发和推广有很大的帮助。首先,利用平台已有的巨大用户资源,如第三方应用商城,实现快速推广,让更多潜在用户能够接触到应用;通过获取用户的社会关系和用户行为,如社区和微博,实现个性化和精准化传播和推广各种服务和信息。其次,利用平台提供的业务能力,如面向开发者的云服务、电信运营商的通信类服务等,一方面可以提高开发效率,将主要精力放在核心能力开发上;另一方面,增加所开发应用的用户体验。第三,实现与平台提供商的分成,如与电信运营商在通信类服务上的分成、应用收益的分成等。
应用开发者选择合适的开放平台,需要从开放程度、分成模式、用户规模、公平竞争等因素综合考虑,还有很重要的是要避免做平台自己会做的应用。
1 http://wikipedia.org/wiki/Google-play
2 Andreas C.The dead platform graveyard:lessons larned.http://www.visionmobile.com/blog/2012/01/the-dead-pkatform-graveyardlessons-21,2012
3 Liat Ben-Zur.Web将成为下一个应用操作系统.http://blog.sina.com.cn/qualcommchina,2011
4 http://zh.wikipedia.org/wiki/敏捷软件开发
5 新浪科技.http://tech.sina.com.cn/i/2013-03-15/08278148801.shtml
6 http://baike.baidu.com/view/4716226.html
7 VisionMobile报告.Developer Economics 2013:the Tools Report,2013