网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容、傻瓜式的表达来告诉你想要的答案。

原创作品,请尊重作者劳动成果,转载请注明出处!!!

注意,苹果发布Xcode7后, 开放了普通的AppleID也能真机调试:( 非$99 或 $299, 只要能上AppStore下载应用的AppleID就行)

真机调试的开发测试环境:

虚拟机版本: VMware11+unlock203

RAD平台:XE8up1  (下载地址及和谐手段请看QQ群:165232328 的不看后悔系列)

MAC平台:OSX10.10.3 懒人版  (安装Xcode7需要10.10.3或以上, 本文所使用的OSX百度网盘:http://pan.baidu.com/s/1jGndibs)

Xcode版本:Xcode7 Beta  (你也可以选择Beta2、3、4, 只是我喜欢Beta1带有刷新PP文件的按钮, 本文所使用的Xcode百度网盘:http://pan.baidu.com/s/1uLbx8)

真机设备: iPad Mini2 iOS8.3 或 iOS8.1或以上的iP4s/5/5s/6/6s  (真机不需要越狱, 但真机iOS版本必须不低于Xcode里下载的SDK版本, 否则编译时会报错:e8000007)

特别提醒:正式发布App时, 请使用正式版的Xcode编译, 而非Beta版。

1.我们先装好VM和OSX10.10.3, 大同小异的步骤请翻看以前的文章, 这里就不详细说了, 只说一说细节:

  a.从上面网盘下载回来的 Yosemite Install(14D131).cdr 需要把后缀名改为iso, 如Yosemite Install(14D131).iso, 这样VM才会识别这个镜像。

  b.配置好虚拟机后,启动时有可能报这个错误:

解决方法:打开你这个OSX虚拟机的目录,找到虚拟机的配置文件 xxxxx.vmx,用记事本打开,在最后部分添加一行 smc.version = "0"  保存后即可忽略这个错误。

  c.和旧版本不同, OSX10的磁盘工具改到了标题栏里。 

2.把 Xcode7 Beta 和 XE8up1的PAServer放到一个U盘里(需要4G以上空间), U盘需要先格式化为FAT32, 因为OSX不能识别NTFS格式。

有不明真相的群众问我为何虚拟机和物理机共享文件要用U盘,那只是因为:我们装OSX不是为了黑苹果,而是为了编译程序,U盘传递稍方便点,如果你用传统方式给虚拟机映射共享文件夹,那你需要安装VM tool,何苦呢。
---------------------------------------------------------------

这是8G的U盘,抽烟的程序员只需要少抽2包就有了。模拟器也是可以先下载的,因为在Xcode里那个下载速度严重受不了。

3.安装PAServer、Xcode7,具体操作可以翻看以前的文章。

设置好Xcode版本。

下载好相应的SDK。可以先下载好,再放进Xcode也行,避开Xcode的龟速下载。

4.利用Xcode7生成证书、AppID、Profile。 
---------------------------------------------------------------

1.运行Xcode,Xcode打开后,点左上角菜单'Xcode',点'Preferences'。

2.在打开的窗口中,点'Accounts',切换到账号页,然后点下面的'+'号,在弹出菜单中点击'Add Apple ID'。

3.在弹出的对话框中,填入你的AppleID和密码(不需要$99的账号,只要能登录AppStore下载应用的普通账号就行)。填完后,点击'Add'。

4.假如账号密码正确的话,Xcode会将账号添加到账号列表,点击左侧的账号,可列出该账号的开发授权,Agent表示该账号是付费账号,Free表示未付费但可免费调试。

我们双击它。

5.这里证书和授权文件是空白的,点中间的'+'号,在弹出的项中选择'iOS Development'。

6.稍等一下,证书就自动生成了,是以你的账号命名的。

7.而下面的Provisioning Profiles是空白的,因为我们还没有提交过ID和设备UDID,这里肯定是空白的。点'Done'关掉它。

8.继续,这个窗口不用管它,我们点击'Window'->'Devices'。同时将真机接到电脑中,并连接上。

9.识别了设备后,等待Xcode自动为你开启调试模式,如果长时间卡在菊花这里,请解锁真机,并在真机弹出的对话框中点'信任'。

当真机准备完毕后,可以把此窗口关掉。

10.PP文件必须由苹果来生成,那么我们来利用Xcode为我们生成一个。

点击'File' -> 'New' -> 'Project',新建一个Xcode工程。

11.选择iOS类型,随便选个模型,'Next'。

12.在工程名中填上内容,AppID则会自动根据此而生成。Devices里如果你的是iPhone则选择iPhone。'Next'。

13.选择位置保存,我是放在桌面的,所以点桌面,然后在空白地方右键,'New Folder',新建一个文件夹来放这个工程。

14.双击进入新建的文件夹。

15.点'Create'保存。

16.选择了保存位置后,马上就进入工程,因为Xcode7自带iOS9,而我们的设备只是8.3,下载的SDK也是8.3的,所以先将版本降低,这里先选8.3。

17.点一下这里,选择我们的设备。('Devices'里的设备类型会自动读取新建工程时的设置,如果不正确则需要选择正确的类型)

18.选择你连接到MAC中的设备,如果这里选不了,你就得先回到第16步降低版本。

19.然后点'Team'这里。

20.Xcode会自动读出我们前面添加的账号,选择它。

21.然后点'Fix IsSue',让苹果为我们生成Provisioning profiles。

22. 这个过程是全 (不需要我们填这表) 自 (填那表) 动 (还得证明你妈是你妈) 的。。。

23.能看到这些都可以选好了,就表示文件已经在遥远的他方里生成了。我们来下载回来。

24.点菜单'Xcode' -> 'Preferences'。

25.双击打开。

26.点一下左下角的'刷新',稍等一下,Xcode就会为我们把远在他方的PP文件下载回来。在刷出来的PP文件上点'右键',选择'Show in Finder'。

27.双击它,自动将它安装到真机上。(前提是你的设备必须连着MAC)

28.窗口一闪,闪回刚才的地方,就表示已经安装好了。我们来验证一下。

29.点菜单'Window' -> 'Devices'。

30.在'Devices'中,右键点我们的真机,选择'Show Provisioning Profiles'。

31.很好,已经看到了,我们点'Done'关掉它。

32.'Devices'窗口也关掉。

33.'Accounts'窗口也关掉。

34.把Xcode的工程最小化,因为等下我们还要用到。我们去打开PAServer。

35.点一下桌面空白处,回到桌面后,点'前往' -> '应用程序'。

36.运行PAServer 16.0

37.运行中,状态良好。。

38.回到Windows,在XE8里添加iOS SDK,这里不详细说了,可以翻看旧的文章。配置好后,我们打开一个工程,这里选择自带的某个Demo,选好编译类型和设备。

39.点'Project' -> 'Options',我们来配置证书。

40.打开Options后,选择'Version Info',在CFBundleIdentifier中,填上Xcode中我们建的工程所生成的Bundle Identifier。下面版本默认7.1,不要改。(2015.11特别说明,这个不是指安装应用的最低IOS版本,这个的意思是告诉编译器以7.1版本的格式生成info.plist,因为不同时期的SDK区别很大,如XCODE4.x时该值为6.0)

41.Bundle identifier填好后,点左下角的'Proisioning','Target' 上选择 'Debug' 里的 'iOS Device - 32bit'。

42.在'Build Type'中,选择 'iOS Device -32bit-Development'。

43.'Provision Profile'中,选择你的PP文件,如无意外,XE8可以正确获取到的。

44.'Developer Certificate'中,选择我们的证书,如无意外,XE8可以正确获取到的。

45.全部正确的话,这里其实已经和付费账号一样的操作了,就是编译APP。

46.运行工程,很快就能在我们的真机上看到FireMonkey的图标了。看到下面的信息,表示真机上的App已经在运行了。

47.附真机运行App截图 (iPad Mini2, iOS8.3)

到此,XE8+Xcode7的真机调试已完成。

EMB在XE8中加入了Provisioning profile的位置读取,这导致原来的自建证书真机调试无法再实现,幸好苹果总能给人带来好消息。

但是有条件的还是买个证书支持一下吧,因为现在只要一次付费,就能开发iOS和OSX。

PS:
--------------------------------------------------------------- 
FireMonkey移动开发可加QQ群:165232328 (本人非管理员,仅仅其中一成员,此群高手林立,期待各位Delphi爱好者共同交流)。

XE8 & IOS开发之免费证书真机调试:开发证书、AppID、开发授权profile的申请,附Debug真机调试演示(XCode7 Beta版或以上版本适用,有图有真相)的更多相关文章

  1. XE7 & IOS开发之开发账号(3):证书、AppID、设备、授权profile的申请使用,附Debug真机调试、Ad hoc下iPA文件生成演示(XCode5或以上版本推荐,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,以下讨论都是以&q ...

  2. XE7 & IOS开发之开发账号(2):发布证书、发布授权profile的申请使用,附Ad hoc真机调试、生成ipa文件演示(XCode所有版本通用,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,以下讨论都是以&q ...

  3. XE7 & IOS开发之开发账号(1):开发证书、AppID、设备、开发授权profile的申请使用,附Debug真机调试演示(XCode所有版本通用,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,以下讨论都是以&q ...

  4. 修复XCode7 Beta版无法使用iOS8.4真机调试的Bug

        在XCode7 Beta2下如果使用iOS8.4版的真机进行调试,XCode会提示:   "Could not find Developer Disk Image"   解 ...

  5. XE6 /XE8 & IOS开发之免证书真机调试三步走,生成iPA文件并安装到其它苹果设备上

    XE6 & IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相) XE6 & IOS开发之免证书真机调试(2):连接真机并运行App(有图有真相) XE6 &a ...

  6. IOS开发之免费证书+不越狱真机调试

      本文转自:http://www.cnblogs.com/weii/p/4688299.html 苹果发布Xcode7后, 开放了普通的AppleID也能真机调试,非$99 或 $299, 只要能上 ...

  7. 来了!GitHub for mobile 发布!iOS beta 版已来,Android 版即将发布

    北京时间 2019 年 11 月 14 日,在 GitHub Universe 2019大会上,GitHub 正式发布了 GitHub for mobile,支持 iOS 与 Android 两大移动 ...

  8. 如何使用iOS开发者授权以及如何申请证书

    如何使用iOS开发者授权以及如何申请证书 在邮件里有一个Login按钮,点击后可以进入Apple Developer会员中心.点击图中的iOS Provisioning Portal,进入开发者授权设 ...

  9. iOS网络高级编程:iPhone和iPad的企业应用开发之错误处理

    本章内容 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcWluZ2h1YXdlbmthbmc=/font/5a6L5L2T/fontsize/400/fi ...

随机推荐

  1. A session of Log Collect, Retrieval and Analysis using ELK Stack

    Motivation 运维过程中对问题的定位往往需要跟踪和定位日志.分布式和弹性计算的引入,使得日志的定位和分析变得越发复杂. 本次实践主要的目的是考察现有成熟的日志收集.检索和分析方案:Kafka+ ...

  2. tcp之快速重传与恢复

    本文为原创,转载请注明:http://www.cnblogs.com/gistao/ Background 写网络程序的都知道,tcp的窗口控制分为慢启动阶段和拥塞避免阶段,重传机制有快速重传/恢复和 ...

  3. ionic的tabs

    <ion-tabs class="tabs-icon-top/bottom(决定这个tabs是置于上面还是底部)  tabs-color-active-positive(图标与字体色) ...

  4. js跳转传递参数

    额,利用j获取了GridView中选中行数据后,通过JavaScript做跳转,传递参数的时候发现,当参数有中文的时候就会乱码, 当然出现这种情况的时候就需要对跳转的url进行编码 var urlX ...

  5. function中的ajax怎么返回一个数

  6. fail to create java virtual machine..

    今天打开zend stdio 的时候 出现的错误  fail to create java virtual machine... 然后找度娘了,,都说改xxxxx, 我打开360  ,把内存清理了一遍 ...

  7. HTML 标签 表格

    <html>    --开始标签 <head> 网页上的控制信息 <title>页面标题</title> </head> <body& ...

  8. while做法1.兔子生兔子 2.求100以内质数的和3.洗发水15元 牙膏5元 香皂2元 150元的算法

    1.兔子生兔子 2.求100以内质数的和 3.150块钱花完问题

  9. kernel/mktime

    /* *  linux/kernel/mktime.c * *  Copyright (C) 1991, 1992  Linus Torvalds */ #include <linux/mkti ...

  10. IIC

    IIC多主从,双向传输,只有两根线:一根数据,一根时钟,时钟必须由主机发出控制.初始化时主机把SCL和SDA的电平都拉高,然后在SCL保持高电平时SDA拉低形成一个开始信号,紧接着开始信号就开始发送要 ...