l 配置IOS的安装开发环境

使用RAD XE4开发IOS程序,一台MAC是必须的(也可以用虚拟机),

MAC上需要安装Xcode,

独立版本的Commnand Line Tools

以及RAD的paserver。

配置详情:

1. 在MAC上配置环境

a) 安装软件

i. 下载并安装最新版的Xcode

ii. 下载并安装Commnand Line Tools

iii. 将Windows上RAD的安装文件夹里面的RADPAServerXE4.pkg传送到MAC ,并安装

b) 破解XCODE

i. 创建证书,证书名一定要为 iPhone Developer

ii. 破解ios sdk及其xcode的相关配置文件(双击配置文件就可以打开,注意SDKSettings.plist有权限控制,如果没有,将文件拷贝到桌面上,然后修改为,再覆盖源文件)

1. 修改/Developer/Platforms/iPhoneOS.platform目录下的Info.plist文件,将其中的 XCiPhoneOSCodeSignContext 都改为XCCodeSignContext。共有三处

2. 修改/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk目录下的SDKSettings.plist文件,修改如下字段:<key>CODE_SIGNING_REQUIRED</key><string>NO</string><key>ENTITLEMENTS_REQUIRED</key><string>NO</string>

3. 打开xcode,修改具体项目的配置(此步骤以后在每次新建项目的时候都得进行)
开启Xcode->然后打开自己的项目->菜单选择(Project>>Edit Project Setting)->选择“Build”面板->找到Code Signing Identity项,并将“Code Signing Identity”更改赋值。两种方法:

a) 如果你建立来伪造的证书“iPhone Developer”,这里就可以选择你建立证书的名字。

b) 如果没有建立证书,这里选择“Don't Code Sign”

4. 在Build Phases中添加一个Phase,右下角的Add Build Phase,然后单击Add Run Script,输入以下脚本(如图)

export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate

if [ "${PLATFORM_NAME}" == "iphoneos" ]; then

/Developer/xcode-crack/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";

codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"

fi

c) 在mac上面执行rad paserver,直接输入密码,并记住,在用FIREMONKEY调试期间不要关闭rad paserver。

d) 到此MAC端配置完毕

1. 配置WINDOWS端

a) 安装软件

i. RAD DELPHI XE4(在安装的时候一定要注意有一个可用的序列号,否则安装出来后可能出现不能定位到源码的情况。这里提供一个序列号:MNFA-A3D8PK-F4BBAE-FCQN

ii. 安装setup_paserver.exe 在目录RAD Studio\11.0\PAServe下

iii. 配置Connection Profile连接到Mac

1. 在XE4的IDE中,菜单Tools->Options,在弹出的Options窗体右边列表中选择Environment Options->Connection Profile Manager,按下Add…按钮,弹出创建Connection Profile的向导窗体,

2. 输入Profile的名称,选择Platform为OS X:

3. 填写Mac的IP地址或机器名(对于IP地址经常变动的,建议填写机器名),PAServer的端口号,以及密码(这个密码就是在mac端执行rad paserver时所输入的密码)

4.

5. 填完之后,点击Test Connection来测试一下是否连接

6.

i. 导入iOS SDK

1. 在XE4的IDE中,菜单Tools->Options,在弹出的Options窗体右边列表中选择Environment Options->SDK Manager,按下Add…按钮,弹出创建SDK的向导窗体,选择ios Device,然后OK

2.

2. 创建程序来执行

a) 新建Firemonkey mobile application 程序,就可以直接执行了

3. 配置完毕后,如果需要真机调试

a) 还要一台越狱后的IOS DEVICE,越狱的过程:

i. 在网络上找一个iOS6越狱工具evasi0n,然后直接双击运行

ii. 第一步进行完毕之后,在IOS上面点击一个叫做Cydia的应用,

iii. 点击管理

iv. 添加源

v. 输入 APT.WEIPHONE.COM

vi. 点击安装

vii. 等待IOS 重启完毕,在打开cydia 在点击管理,在点击 刚刚新家的weiphone源,找到一个APPsync的应用,安装

viii. 等待重启

ix. 再次点击Cydia ,进入后等待自动关闭

x. 完成越狱

l 点评

优点:

1. 通过XE4可以使DELPHI人员快速的开发ISO程序:只要开发环境配置好过后,就可以一键创建,然后调试运行。

2. XE4的firemonkey 能够实现跨域多个平台部署。

3. Firemonkey 程序使用的全新的构架,其图形图像控件的处理能力相比VCL强大许多,新增加了控件样式,全新的控件绘制方式(基于父控件的绘制,未使用windows的标准控件,提供了GID+的类库,新增加许多图形,比如Tshap,TRoundRectangle,TCicly等等,增加了DXAPI的封装,使得制作3D程序更加方便)),所以能够创建出丰富多彩的应用程序,如果开发的时候多花心思,能够大大的提升用户体验。

4. 入门简单:Firemonkey是对VCL的深度扩展,所以很多代码还是适用。

5. XE4引入了.net自动释放内存的机制,对象创建后,不必要手动Free释放。

6. XE4提供了一组DataSnap网络控件,用来实现客户端和服务端需要互交的程序,起服务端可以使一个Windows程序,而客户端可以使Ios或者Win8程序。其服务端的性能非常可靠。

7. RAD公司花了大价钱买去了Delphi,其目前的开发团队虽然比不上过去的群星豪华,但是也是非常用心的在做程序,更新速度比较快。

缺点:

1. 开发成本过高:通过XE4来开发IoS程序,必须要一个装有XCODE的编译器的MAC,为程序员配置MAC的成本会比较高。而且如果真的都有了MAC又何必要用XE4来开发程序!

2. FireMokey使用的新的构架,所以VCL程序员需要经过一段时间来学习其新的构架,为了实现跨平台,FIREMONEKY在内部实现里,大量的使用了接口,这样使得代码的阅读稍微变得困难一点。

3. 使用XE4开发IOS程序,是在windows上面通过网通访问 MAC上的XE服务器,然后服务器发送消息到设备或者模拟器上,中间经过几次转化效率自然比不上直接从ISO开发的程序。

XE4 IOS开发环境配置的更多相关文章

  1. ios开发环境配置及cordova安装与常用命令

    一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本 ...

  2. Xcode5 + phoneGap2.9搭建ios开发环境-配置-测试-归档上传/phoneG...

    前言: 小弟是做JAVA/Android的第一次搞这个ios,公司有mobile项目是使用phoneGap开发的,需要开发ios版本.什么都不会只能一点一点琢磨了……大神越过…… 原文链接:http: ...

  3. Mac电脑配置IOS React Native开发环境配置笔记

    React Native(以下简称RN)的开发环境配置直接参考官方文档即可完成,不过对小白来说东西有点多,有些名词不是很好理解,这里就官方的安装文档稍微展开说一下. 中文版配置说明:不错的中文说明.官 ...

  4. VS2015配置安卓Android和iOS开发环境

    http://www.cjjjs.cn/paper/gzsh/627201502818357.aspx [摘要] 本文按照步骤一步步的介绍要下载安装的东西,都提供了下载地址.最后将所有需要的程序都打包 ...

  5. Windows下搭建IOS开发环境(一)

    原文:http://blog.csdn.net/shangyuan21/article/details/18153605 我们都知道开发iPhone等ios平台的移动应用时需要使用Mac本,但是Mac ...

  6. 【Xamarin挖墙脚系列:Xamarin开发环境配置需求】

    原文:[Xamarin挖墙脚系列:Xamarin开发环境配置需求] 前言 因为操作的全是大块头,加大你们的内存,CPU网上飙.... 卤煮的机器配置  最近的版本部署包,百度云离线下载:版本:Xama ...

  7. Mac系统cocos2dx + android 开发环境配置

    Mac系统cocos2dx + android 开发环境配置 /****************************************************** 这遍文章主要转载自:htt ...

  8. 《React Native 精解与实战》书籍连载「Node.js 简介与 React Native 开发环境配置」

    此文是我的出版书籍<React Native 精解与实战>连载分享,此书由机械工业出版社出版,书中详解了 React Native 框架底层原理.React Native 组件布局.组件与 ...

  9. Ionic 入门与实战之第二章第一节:Ionic 环境搭建之开发环境配置

    原文发表于我的技术博客 本文是「Ionic 入门与实战」系列连载的第二章第一节,主要对 Ionic 的开发环境配置做了简要的介绍,本文介绍的开发环境为 Mac 系统,Windows 系统基本类似,少许 ...

随机推荐

  1. WCF服务端与客户端时间匹配问题

    当服务端部署的WCF服务服务在被客户机调用时,如果显示: 错误,展开后,详细错误为:An error occurred when verifying security for the message ...

  2. asp.net word ecxel类型文件在线预览

    asp.net word ecxel类型文件在线预览 首先得引用COM: Microsoft Excel 10 Object Library Microsoft Word 10 Object Libr ...

  3. Unity3D研究院之静态自动检查代码缺陷与隐患

    原地址:原地址:http://www.xuanyusong.com/archives/2828 代码缺陷和代码错误的最大区别是,代码缺陷不影响游戏编译,而代码错误编译都不通过.但是代码缺陷会影响游戏发 ...

  4. 用 VIPER 构建 iOS 应用架构(2)

    [编者按]本篇文章由 Jeff Gilbert 和 Conrad Stoll 共同编写,通过构建一个基础示例应用,深入了解 VIPER,并从视图.交互器等多个部件理清 VIPER 的整体布局及思路.通 ...

  5. 理解Flight框架核心

    http://blog.csdn.net/sky_zhe/article/details/38906689 Flight 框架 Flight类 1.加载 autoload.php ,启动框架的自动加载 ...

  6. HDU 2059 龟兔赛跑(动态规划)

    龟兔赛跑 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  7. 使用MbrFix.exe修复MBR分区表

    在卸载linux Ubuntu之前,先修复MBR,然后再删除Linux分区就可以了.而MbrFix.exe 就是这样一个Windows 修复MBR的应用程序软件,MbrFix.exe 不仅支持Wind ...

  8. [你必须知道的.NET]第三十二回,,深入.NET 4.0之,Tuple一二

    发布日期:2009.06.01 作者:Anytao © 2009 Anytao.com ,Anytao原创作品,转贴请注明作者和出处. Tuple,是函数式编程的概念之一,早见于Elang.F#等动态 ...

  9. 快速创建maven 工程:simple java工程,webapp

    http://www.cnblogs.com/buhaiqing/archive/2012/11/04/2754187.html 会从maven的Repository里查找所有支持的arche typ ...

  10. Shell练习 验证号码

    原文: https://leetcode.com/problems/valid-phone-numbers/ Given a text file file.txt that contains list ...