Delphi XE2创建Apple iOS程序


本文整理自网络,侵删。

 上个礼拜,EM正式发布了RAD Studio XE2。 RAD Studio 是基于DELPHI,原生的编程语言 Object Pascal ,可视化的开发语言套装。XE2是多年来最有卖点的一个版本了,包含64位win编译器,跨平台的支持(Apple’s OSX and iOS) 

我已经测试了最终的发行版,我特别关注该版本对iOS的支持,还有对apple移动系统的支持。XE2只能运行于WINDOWS环境下,所以测试APPLE平台最快捷的方法当然是在windows里安装虚拟机了。我用的是Parallels(Parallels的介绍)的虚拟机,我的主机系统是Windows 7 64-bit,虚拟机系统是 OS X Lion。

XE2开发IOS程序需要几个设置步骤。首先,你需要用一种新的架构叫FireMonkey来创建跨平台的程序。FireMonkey是在EM收购了KSDev公司后获得的一种新的架构。来看看她的开发者Eugene Kryukov的自我介绍:

KSDev’s已经被EM收购了,这家公司是Delphi 和 C++Builder的拥有者。我非常荣欣的接到EM的通知,让我加入她们的团队,领导下一代框架开发团队。所以很遗憾,我不能在开KSDev公司了,并且不能再接新的订单了。

我们讨论的DELPHI框架原叫VGScene 和 DXScene,现在已经叫FireMonkey了。FireMonkey的控件如按钮,列表框全部是绘制的,这有利于跨平台,但是你会觉得程序你的程序不是原生的。FireMonkey 不兼容DELPHI vcl可视控件库,虽然基本的控件很相似。 FireMonkey 可以绘制3D程序也可以绘制HD程序.

XE2对Mac OSX的整体支持要比iOS好。你可以很容易的在程序中添加OSX输出项目,而开发IOS你必须新建个叫 iOS的工程项目。另外不同的是,EM有她自己的MAC编译器,而 开发iOS还要用到FreePascal 编译器。开发OSX程序,你可以直接在DELPHI IDE你调试程序,而开发IOS程序需要导出项目到Xcode里进行编译。


开始创建IOS程序了,首先,你需要个安装了XCode和 iOS SDK 的MAC虚拟机系统。然后,在windows里安装RAD Studio XE2,在RAD Studio XE2的安装路径里找到叫FireMonkey-iOS的文件夹,该文件夹下有个叫FireMonkey-iOS.dmg的文件,将该文件复制到MAC的系统中,运行FireMonkey iOS 安装FreePascal 和FireMonkey 库。

如果你还要开发OSX项目,你还必须在MAC虚拟机里安装Platform Assistant(如果只是开发IOS项目则不需安装)。现在你可以返回到WINDOWS系统,用XE2创建新项目,项目类型选择 FireMonkey HD iOS application

这时就会创建个iPhone 4代机大小的窗体,你可以修改窗体。此时,控件栏和开发普通的WINDOWS程序可能没有什么区别。但是需要注意以下信息:开发ios程序时,你只能用支持iOS的控件,虽然有的控件在控件栏是显示的但是她并不支持IOS程序。

我敢说,开发IOS的体验并不太好(可能还没有完全做好)。下面做个简单的计算器DEMO.

怎么按钮全是绿色的》?我干的!这就涉及到程序的美工设计了(译者注:XE2已经自带了类似于皮肤的控件),对于简单的测试虽然是没有必要的,但是默认的程序和IOS不太协调。

在开发程序时感觉有个BUG,如果选择了多个控件尺寸框就不见了,看不出选择了哪些控件.开始我以为不能选择多个控件,但是这不是真正原因所在。还有就是在设计器里,剪切板不能用。比如你想添加几个相同的按钮,你要一个一个的添加,然后选择这几个按钮改变他们的属性

开发IOS程序时,你可以在WINDOWS系统里运行测试。等到程序调试好了,准备转到IOS了,必须导出项目。

首先你要准备个叫 dpr2xcode.exe命令行工具 (在xe安装路径的BIN文件夹下),以命令行方式运行该程序。是不是很不方便,所以从TOOLS里添加到IDE里(译者注:选择TOOLS--TOOL OPTIONS--ADD--BRPOWSE--TILE随便写比如叫SUN--选择文件dpr2xcode.exe--点击MACROS展开选择项--双击$PROJECT--点OK--点close;)

很令人莫名其妙,为什么EM不把她作为默认设置??(译者注:集成到IDE)

运行TOOLS下的SUN(在上一步里添加快捷键里添加的),在你的项目文件夹里会创建一个xcode的文件夹,其中有一些漂亮的图标,然后复制这个文件夹到MAC虚拟机里(当然也可以将该文件夹设置为和mac虚拟机共享,实际我使用时共享有点小问题,所以还是简单的复制吧)

用XCODE打开项目,设置好就可以编译好并且在IPHONE虚拟机里运行了!

当然,以上都是在虚拟机里的测试,还必须到真正的机器里测试,将文件倒到iphone4里,设置好证书,运行成功!

and here it is on the iPhone:


It works, and to that extent I am impressed. That said, I am disappointed with the performance. This is subjective, but I am talking about the responsiveness of the UI. There are perceptible pauses, which for such a simple app is surprising. I have created this same app numerous times using different development tools, and had expected that the Delphi version would be up there with the best, but while it is acceptable it is less responsive than some of the others.Let me add though, a Delphi developer will find the process described above a easier than learning Objective C, and I was able to create this fully working app in an afternoon so I should not complain too much.
Maybe when Embarcadero comes up with its own iOS compiler there will be some improvement.

原文出自: itwriting

相关阅读 >>

Delphi中嵌入汇编检测是否在虚拟机里运行

Delphi 判断操作系统是否是64位的函数

Delphi 删除确认对话框

Delphi目录操作示例

Delphi dbgrid1查询只显示50条记录修改

Delphi mainmenu控件 checkde属性用法

Delphi如何在资源管理器中定位文件

汇编文档进制及进制的转换

Delphi得到系统目录的几个方法

Delphi debug模式下可以但是release模式下报错原因之一

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...