我们今天介绍了移动开发新宠:Lua语言,就这篇文章说的Lua代码几乎能在所有操作系统和移动终端上编译运行,而我们介绍过Lua语言在iOS上开发的Wax框架。本文我们介绍Lua语言SDK库Corona,有了Corona SDK以后Lua语言就可以支持iOS和Android平台了。如果你正在使用或者打算使用Corona SDK,这篇文章将对有很大帮助。
首先是Corona SDK的优点:
◆稳定
◆支持硬件加速、GPS、指南针及照相机等
◆支持与Map、Facebook、OpenFient、GameCenter的集成
◆内建的物理集成
◆Lua语言比较容易学习
◆已经有了一些很不错的应用,至少能够证明这个SDK是可以做出优秀应用来的
◆不错的社区支持
然后是Corona SDK不太好的地方:
◆只支持iOS和Android
◆Lua语言不是面向对象的
◆每年都要交授权费
◆Android支持还有太多BUG
另外还有其他的一些补充,比如:
◆对于Corona SDK不支持的第三方SDK没法自己去集成
◆编译项目的时候需要把代码上传到Corona的服务器上去编译,不能在本地直接编译
◆无法扩展Corona的功能,而官方的更新速度又太慢。这是反映的最多的一个问题
◆物理模块还有一些缺陷
相对来说,新的Monkey SDK对这些缺陷就有了很大的改进,比如更广泛的平台支持,比如很方便的Native Code集成,比如只需要购买一次授权,比如完全面向对象的Bliz脚本语言,等等。下面我们来介绍一下Lua+Corcna SDK库开发Android或iPhone客户端应用。
一、开发语言的选择
iPhone有Objective-C
Android用Java的多
但是大家可以看看程序语言的排名,Lua这个巴西人发明的本来专门用于嵌入式开发的语言,现在大行其道。已经排名到了前10位,而Ruby在11位左右。
二、SDK库的选择
实际上为什么Lua为什么如此之牛,关键在于一个SDK库的出现,就好像Rails的出现激活了Ruby一样。这个SDK库的出现激活了Lua。
它就是与我们常在酒吧中点的啤酒-可罗拉的名字一样:Corcna。
Corcna还包含一个pc机上使用的手机模拟环境。
好了大家将Lua的开发环境、Corcna 这个SDK库下载安装吧。
Lua+Corcna的环境好了之后,你就可以一次编写,可以将应用放在iPhone或者Android上了。
速度吗,据说没问题。
三、创建***个hello程序
实际上SDK就是提供了各类环境的库函数。
Corcna就是基于手机的库函数(我估计它囊括了Android和iPhone,在编译之后,可以智能的使用相应的库函数。 )
随便使用一个编辑器,notepad++有Lua的syntax,识别Lua代码。键入如下代码:
- local textObject = display.newText( "Hello World!", 50, 150, native.systemFont, 24 )
- textObject:setTextColor( 255,255,255 )
另存为:main.Lua,main是入口。
好了,我们使用Corcna模拟器运行这个代码,即可完成。open ,main.Lua 即可。这时候hello world 已经显示在模拟的手机屏幕上了。