当然,如果你有时间也有足够的资源而且技术很全面,你可以分别为每种应用开发出不同的版本,如iPhone版、Android版等,或者利用Web技术开发一个通用的版本,但这样开发出来的应用一般不能充分发挥手机的性能。
开发平台选择之难
由于色彩绚丽、多媒体应用越来越丰富,使得智能手机迅速流行开来,这给开发人员打开了一个新的领域—移动应用。不过,摆在开发人员面前的挑战并不少,比如要掌握新的SDK(软件开发工具包),而更为困难的是手机操作系统种类繁多,而且缺乏统一的标准,这使得开发人员的选择异常困难,因为在某种手机操作系统上开发的应用很难简单地移植到其他操作系统平台上。
“现在的问题是移动设备的操作系统和运行平台种类各不相同。” Eclipse的移动工具项目负责人、摩托罗拉开发工具架构师Christian Kurzke说,“不同的设备有不同的开发框架和应用框架。”
即使运行同一种操作系统的手机,不同公司的手机上应用的开发方法也可能不同。“我在Android手机上做过试验,我发现在不同公司的Android手机上开发应用区别相当大。” iPhoneWebDev社区的创始人Christopher Allen说。
这种不统一还体现在同一厂商的手机上。例如,Verizon计划发布一个用来开发Windows Mobile和BlackBerry应用的SDK,这个SDK针对Verizon网络进行了专门优化,能改善使用Verizon网络的手机用户的个人体验。然而,对开发人员而言,意味着将来就要为不同的通信网络开发应用的不同版本。摩托罗拉也计划发布Android手机的SDK,其中有摩托罗拉特殊的运行库,虽然摩托罗拉声称也能用这个SDK开发非摩托罗拉手机上的应用。
另外,一些第三方发布的通用开发平台也让事情变得更加复杂。比如,虽然苹果发布了iPhone的SDK,但是开发人员也可以使用第三方的iPhone应用开发工具。同样,RIM有黑莓的SDK,但是除此之外,开发人员也可以使用第三方的开发工具。
HTML 5能改变什么
幸运的是,像HTML 5这样的Web技术也许能缓解上述问题。“HTML 5的确会给移动应用的开发带来福音,”维基百科基金的软件开发技术人员Hampton Catlin说,这个规范提供了很多新的功能,如用于图像显示的画布功能(Canvas)。
“不再需要用Objective C(iPhone用),也不需要用Java(Android用),从本质上说,你就是在手机上通过HTML 5下载一个非常复杂Web页面。”
Catlin说,WebKit浏览器引擎专门针对HTML 5提供了很多的支持,应用程序如果使用这个浏览器就能同时运行在iPhone、Palm Pre和Android上,而且开发人员仍然可以使用他们非常熟悉的技术,如CSS、JavaScript等。尽管仍然免不了需要针对每一种设备进行修改,但是,修改的代码会非常少,每个设备需要修改的代码不超过20行。
Break.com的.Net开发人员Charles Taylor说,Palm Pre就特别适合采用运行基于HTML 5的Web应用。“那将是一个完全不同的世界,iPhone上的应用开发将变得和传统的Mac OS上的应用开发一样简单。”
Google和Palm都宣称它们的手机支持HTML 5。对开发人员而言这是好事,会让应用的开发更为简单,Google和Palm的SDK让开发人员可以把HTML 5、CSS、JavaScript等功能与手机专有的功能结合起来。
不过,到底是选择基于HTML 5的方法还是专用SDK,人们需要进行权衡。
“虽然开发iPhone应用要复杂得多,但是在iPhone平台上的应用也比Palm Pre上的功能更强,比如,iPhone就比Palm Pre更容易开发9
7
3
1
2
4
8
:
本文来源:计算机世界 作者:佚名