使用Javascript开发移动应用程序


  本文标签:Javascript HTML

  Javascript并不仅仅只用于网页和网站程序  。你还可以创建实时应用、服务端解决方案、桌面和移动应用  。移动应用分为两种:浏览器里的网页应用和本地应用  。本地应用通常更快更强大,因为它们有访问文件系统、传感器、照相机等设备的权限  。本地应用通常使用手机指定的语言编写,例如Objective-C、Java  。所以独立开发者通常使用HTML+CSS+Javascript的解决方案  。幸运的是,感谢最新的技术,我们可以很方便的将网页应用转换为真正的本地应用  。

  Titanium Appcelerator(http://www.appcelerator.com/)

使用Javascript开发移动应用程序

  

  

  视频(http://vimeo.com/moogaloop.swf?clip_id=8730218&server=vimeo.com&show_title=0&show_byline=0&show_portrait=0&color=&fullscreen=1)

  这个恐怖的工具允许你使用所知道的网页技术通过本地控制为iPhone、iPad、Android(稍后将支持黑莓)创建强大的移动应用  。这些技术包括HTML5、CSS3、Javascript、PHP、Ruby和Python  。此外,它最近还更新了文档  。

  你可以使用任何一个你想用的框架(例如Mootools、jQuery、Prototype)并利用上CSS3和Javascript的最新特性  。这是因为Titanium程序实际上运行在聪明的嵌入式Webkit(即Safari)窗口中  。从Titanium 1.0版本开始,除Webkit Webview外只有Javascript模拟器  。像米切尔所写的一样:

  在Titanium 0.8版本中,Webkit的Webview被当作核心使用,周围是GPS、用户界面、相机和映射到操作系统的数据  。而到了Titanium 1.0版本,开发者现在可以选择通过直接绑定到操作系统的API为iPhone上的Objective-C或者Android上的Java建立Javascipt桥  。

  如果你学习了Titanium手机API,你会发现它使用地理定位或者鼠标手势是多么的简单  。你甚至还可以仅仅通过简单的几行代码,就可以把你的应用连接到Facebook  。

  PhoneGap(http://www.appcelerator.com/)

使用Javascript开发移动应用程序

  

  

  就像Titanium一样,Phone Gap让你可以使用HTML和Javascript来为多个手机平台构建应用,包括iPhone、Google的Android、塞班、Palm和黑莓  。你可以在这里看看上面提到的这些平台目前支持哪些特性  。

  坦白的说,我只用过Titanium,但是PhoneGap看起来也是一个很好的选择  。

  另外还有QuickConnectFamily和NibleKit  。第一个相当强大,第二个缺乏文档同时不支持跨平台(只支持iPhone和iPod)  。我还推荐iWebkit,但是它的主页最近被黑了(我没有开玩笑…)  。

  你可能会对让你工作更容易的框架感兴趣  。例如,如果你希望你的应用有特别的iPhone界面和外观,可以试试:

  jQTouch(http://www.jqtouch.com/)

jQTouch

  

  

  它可以使你轻松创建Webkit浏览器上运行的iPhone应用(还可以再使用Titanium 或PhoneGap 来创建本地应用)  。

  除jQTouch之外还有一个选择:IUI  。你可以在Google代码里找到它  。

  如果你要选择一个轻量级和非jQuery的框架,可以试试WebApp,它被设计来模拟iPhone和iPod Touch真实的用户图形界面  。

  XUI(http://xuijs.com/)

XUI

  

  

  我们听到了你的话  。另外一个Javascript框架是什么?!当使用PhoneGap开发时,使用现代的Javascript(例如Prototype、MooTools、YUI、Ext、甚至jQuery),会导致加载时间变慢  。一个最大的原因是这些库太大,主要是它们包含了大量跨浏览器兼容性代码  。到目前为止,手机平台上浏览器实现和不同的需求很少,所以请考虑XUI  。

  我已经说得够多了…

  Cappuccino(http://cappuccino.org/)

Cappuccino

  

  

  这个框架为非Objective-C开发者设计,Capucchino引入了Objective-J  。

  Objective-J是一个基于Objective-C的新式编程语言  。它同时是Javascript的一个超集,这代表着任何有效的Javascript代码也是可用的Objective-J代码  。任何熟悉Javascript和面向对象原理的人,学习Objective-J不会有任何困难  。熟悉Objective-C会有一些帮助,但不是必须的  。

  使用这个框架可以创建和桌面应用一样棒的手机应用(这要感谢Titanium)  。可以看看一些示例:280 slides,Mockingbird或者Github问题  。

  iProcessing(http://luckybite.com/iprocessing/)

iProcessing

  

  

  使用上面的框架你可能无法创建3D应用和游戏  。所以有了iProcessing  。它是一个开放的编程框架,帮助人们使用Processing语言开发本地iPhone应用  。它是Processing.js库和iPhone上Javascript应用框架的结合  。

  视频(http://www.youtube.com/v/tENliJSMEB8&rel=0&color1=0xb1b1b1&color2=0xd0d0d0&hl=en_US&feature=player_embedded&fs=1)

  原文链接:http://article.yeeyan.org/view/153993/174186