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

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

注意,以下讨论都是以"合法注册开发者账号并支付年费"为前提,利用无证书生成iPA的小朋友请无视本文: 

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

RAD平台:XE7

MAC平台:OSX10.8.5

Xcode版本:Xcode5.1.1

设备:iPhone 4  ios6.1

特别注意:

    1. 本文图片较多,请于较好的网络环境下观看,以免影响用户体验并浪费流量,引起骂爹骂娘的连锁反应。

    2. 如果你的MAC平台曾作过无证书真机调试,生成过自签名证书及修改过Xcode的,请删除相应证书并还原Xcode设置。

    3. 如果你的Xcode版本低于Xcode5或以下(如Xcode4.x),请无视本文,并点击下面链接,参考Xcode通用版本的做法:

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

1.利用Xcode5或以上版本的新特性,一步到位添加设备并自动生成证书、AppID、Profile。 
---------------------------------------------------------------

1.点一下桌面,'Finder'->'前往'->'应用程序'。

2.找到Xcode,双击运行。

3.Xcode打开后,点左上角菜单'Xcode',点'Preferences'。

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

5.在弹出的对话框中,填入你的苹果开发者账号和密码。填完后,点击'Add'。

6.假如账号密码正确的话,Xcode会将账号添加到账号列表,点击左侧的账号,可列出该账号的开发授权,如iOS Agent表示可开发iOS的App。
我们点击左上角的叉叉,关闭该窗口。

7.继续,同样在Xcode下,点击'Window'->'Organizer'。

8.点击'Devices',切换到设备页,并将真机设备连接到MAC中。

9.右键点设备,在弹出菜单中选择'Add Device to Member Center',或者选中该设备后,直接点下面的'+'号也行。

10.在弹出的对话框中,钩选一个开发组,点击'Choose'。

11.完成后,我们继续左上角的菜单点击'Xcode',点击'Preferences'。

12.点一下'Accounts'切换到账号页,点一下左侧的账号,点一下右侧列出的开发组,并点击'View Details'(需要选中一个开发组)。

13.在弹出的窗口中,我们点击左上角的刷新按钮,让Xcode自动给我们下载Profile。

14.我们可以看到,下面列表中已出现了Xcode自动为我们提交生成的Profile了。格式都为:iOS Team Provisioning Profile: xxx。
之所以有2个,是由于AppID的Bundle ID决定的,这个东西填'*'和填'com.英文域名.*'有App使用真机权限上的区别。

15.我们来生成开发证书。点一下中间的'+'号,在弹出菜单中选择'iOS Development'。

16.弹出提示:证书已生成。我们点'OK'。

17.我们再来生成发布证书。点一下中间的'+'号,在弹出菜单中选择'iOS Distribution'。

18.弹出提示,我们的发布证书也生成了。我们点'OK'。

19.点一下左下角的刷新按钮,刷新完成后,上方的证书列表会显示刚才我们申请的2张证书:开发证书和发布证书。
我们去验证一下证书是否已下回来了。我们点右下角的'Done',关闭窗口。

20.继续点左上角的叉叉,关闭窗口。

21.我们暂时不用关闭Xcode,点左上角的'-',最小化Xcode,因为等下我们还有用。

22.点一下桌面,回到Finder,点'前往',点'实用工具'。

23.找到'钥匙串访问',双击打开。

24.在钥匙串访问的窗口中,点左侧的'登录',点下面的'我的证书',则可以看到右侧列表里,Xcode已下载并为我们装上了2张证书。

25.接下来,我们安装Profile文件,点一下桌面或者背后的文件夹,跳到Finder下,点击'前往',点击'前往文件夹'。

26.在弹出的对话框中,输入以下路径:/Users/你的用户名/Library/MobileDevice/Provisioning Profiles ,并点击'前往'。
注意,该文件夹图形方式下是找不到的,需要用路径访问。

27.直达该文件夹了,我们点一下左上角的第二个小图标,让它以列表方式排列。
可以看到,Xcode为我们下载回来了开发账号上的所有的Profile,其中,10KB的那两个,就是Xcode为我们自动提交申请并生成的,
其余8KB的3个读者不必关注,如果你们从来没有登录开发者网站去手动生成过的话,是没有这3个的。
注意:利用Xcode生成并下载回来的Profile授权文件是没有开发和发布之分的,它默认已包含了2种证书在里面(假如你有的话),

可以直接就用作开发或发布,由此可见,Xcode的版本是越高,操作就越简便。

我们将这10KB的2个重命名一下。

28.将10KB的这2个重命名为我们自己容易记的名字。
OSX下的文件重命名操作是这样的:先点一下文件,在选中状态下,隔1秒后,再点一下,文件件就会高亮,同时也可以编辑的了。
点得太快的话会被认为是双击,这里不要双击安装这2个Profile。

29.重命名后,点一下桌面下面的Xcode,让它显示出来,点一下已连接设备下的'Provisioning Profiles',然后把窗口拖开一点点,
直到可以看到后面的文件夹为止,然后将刚才重命名的文件拖到Xcode的空白处后放手,它将会自己安装到设备上去。
这2个分别对应的是'*'和'com.英文域名.*',你可以按需要安装其中一个或全部。

30.安装完成后(大概也就一瞬间的事情),可以看到它们的详细信息:名称、对应平台、有效期、AppID、以及授权文件的状态。
值得注意的是:使用Xcode自动生成的Profile,已经不用区分'开发或发布'类型了。
证书和Profile文件都OK后,我们就可以使用真机调试了。

31.此时可以观察到,真机上已装好2个授权文件。(位置:设置->通用->描述文件)

32.将Xcode关掉,我们已经不需要用它了。

33.回到Finder下,我们点击左侧的'应用程序',去运行PAServer。

34.找到PAServer 15.0,双击运行。

35.PAServer运行起来后,我们可以回到WIN下面,进行真机调试了。

2.真机调试,Debug方式。 
---------------------------------------------------------------

36.打开XE7,并打开一个工程。
我们先来配置一下工程的授权设置,点击'Project',点击'Options'。

37.在Options窗口中,点击'Provisioning',然后点击右侧的Target,在下拉菜单中的'All configurations'里选择'iOS Device platform'。

38.在Build Type中选择:'iOS Device - Debug'。

39.在'Developer Certificate'中填上Mac里Xcode自动为我们安装的开发证书的名字。
开发证书的名字可以在Mac下->'钥匙串访问'->'登录'->'我的证书'中,找到iPhone Developer开头的就是,请注意大小写。

40.填好开发证书以后, 我们继续,点一下'Build Type',在下拉菜单中选择'iOS Device - Ad hoc'。
我们继续配置 Ad hoc这种编译类型。

41.选择了iOS Device-Ad hoc后,填上发布证书的名字、Profile文件在Mac中的路径。完成后按'OK'保存。
发布证书的名字可以在Mac下->'钥匙串访问'->'登录'->'我的证书'中,找到iPhone Distribution开头的就是。
Xcode为我们下载的Profile的默认路径是:
/Users/你的用户名/Library/Provisioning Profiles/xxx.mobileprovision。
这里要注意的是:发布证书的名字在MAC中,第一个D是大写的,但在XE7中,这里必须填小写,如:
Mac下:iPhone Distribution : xxxxx
XE7下:iPhone distribution : xxxxx
否则,XE7的PAServer会因为这一个字母的大小写原因而报找不到发布证书!
这可能是我这里的问题,也有可能是XE7的PAServer的一个Bug? 期待更多测试结果及用户反馈。

42.配置好编译环境,如设备、尺寸、平台等。我们先来试下Debug编译。双击Debug,变粗后,就可以运行工程了。

43.静待编译结果。
当进度在构建72x72的png时停留了一段时间而没有进展,而下方也没有给出错误信息时,我们可以切换到MAC下去授权程序签名。

44.切换到Mac下,可以看到弹出了一个对话框,我们点击'允许'或'总是允许'。然后切换回WIN下面看结果。
区别就是:'总是允许'后,重复编译这个工程时,该证书对这个App的所有签名都将一律允许,而XE7也不会在72x72的png停下来。
吃了炫迈,根本停不下来啊!

45.回到XE7下,授权签名后,编译继续进行,如果没有报错的话,很快就能在真机上看到我们的App了。

46.运行结果真机截图。(iPhone4 iOS6.1)

3.真机调试,Ad hoc方式。 
---------------------------------------------------------------

47.停止调试后,我们将真机上的App先卸载掉。不卸载看不出新的编译结果。
然后编译设置改一下,更改为Ad hoc,其它基本不需要变动。更改完成后,可以运行工程了。

48.由于之前没有选择'总是允许'签名,所以依然是在这里停下来。我们去Mac里授权一下。

49.点击'允许'或'总是允许'。

50.注意,假如上一步点击'允许',那么马上还会出现一次询问。
这是因为Ad hoc方式,它会有2步操作:在真机上安装App、生成ipa文件。

51.回到XE7下,允许签名后,编译继续。这里我们就不贴上真机截图了。

52.至于ipa文件,可以在以下2个地方找到:
Mac下:/Users/你的用户名/PAServer/scratch-dir/以(windows用户名-iOS SDK名称)命名的文件夹/xxx.ipa
Win下:工程目录\iOSDevice\Release 或 Debug\xxx.ipa

4.关于Xcode5或以上版本自动替我们在开发者网站上做的那些事。 
---------------------------------------------------------------

53.当我们在Xcode下添加了设备到Member Center时,Xcode替我们在开发者网站上添加了我们的设备。

54.同时,Xcode还替我们在开发者网站上添加了AppID。
名称统一为:Xcode iOS Wildcard App ID。

55.同时,Xcode替我们在开发者网站上添加了Profile授权文件。
共2个,可以很容易识别出,文件的状态是: Active(Managed by Xcode) 激活,并且由Xcode管理。
名称统一为:
iOS Team Provisioning Profile: *
iOS Team Provisioning Profile: com.你的英文域名.*

56.当我们在Xcode下生成开发证书、发布证书时,Xcode替我们在开发者网站上添加了这2个证书。

至此,关于Xcode5或以上版本下的XE7 Debug和Ad hoc调试已介绍完毕。

而关于Application Store 的上架方式,我们稍后再介绍,谢谢关注。

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

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

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

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

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

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

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

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

  4. 【iOS开发必备指南合集】申请企业级IDP、真机调试、游戏接入GameCenter 指南(实现仿官方的成就提示)、游戏接入OpenFeint指南;

    本站文章均为李华明Himi原创,转载务必在明显处注明:(作者新浪微博:@李华明Himi) 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-c ...

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

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

  6. 免费苹果账号(apple id)申请ios证书p12真机调试

    HBuilder可以直接打包越狱版的ipa包,但需要越狱手机才能安装,如果需要安装到没越狱的手机安装,需要自己申请ios证书打包. 一般是需要一个付费了的苹果开发者账号才能申请ios证书打包. 这里介 ...

  7. iOS 证书、真机调试、发布 App Store

    之前对iOS的证书弄的很不清楚,Xcode里面也有各种证书,作为一只有强迫症的巨蟹座,这是不能忍的 趁着准备发布自己的第一个app,梳理一下这块内容 主要参考了这几篇文章: iOS开发:创建真机调试证 ...

  8. XE6 & IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相)

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

  9. iOS开发:创建真机调试证书及描述文件

    iOS开发:创建真机调试证书及描述文件 关于苹果iOS开发,笔者也是从小白过来的,经历过各种困难和坑,其中就有关于开发证书,生产证书,in_house证书,add_Hoc证书申请过程中的问题,以及上架 ...

随机推荐

  1. case的执行顺序 & 嵌套使用

    我们先来看一下表中数据的情况: select * from PRODUCTINFO PRODUCTID PRODUCTNAME PRODUCTPRICE QUANTITY CATEGORY DESPE ...

  2. C的文件操作

    文件文件的基本概念 所谓“文件”是指一组相关数据的有序集合. 这个数据集有一个名称,叫做文件名. 实际上在前面的各章中我们已经多次使用了文件,例如源程序文件.目标文件.可执行文件.库文件 (头文件)等 ...

  3. 深入理解Bindler

    Binder模型

  4. BZOJ4724 [POI2017]Podzielno

    4724: [POI2017]Podzielno Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 77  Solved: 37[Submit][Stat ...

  5. C语言字符串处理函数

    函数名: strcpy  功  能: 拷贝一个字符串到另一个  用  法: char *stpcpy(char *destin, char *source);  程序例:  #include < ...

  6. CentOS7关闭防火墙方法

    在之前的版本中关闭防火墙等服务的命令是 service iptables stop /etc/init.d/iptables stop 在RHEL7中,其实没有这个服务 [root@rhel7 ~]# ...

  7. flask在windows上用mod_wsgi部署

    flask在windows上用mod_wsgi部署也是折腾了不少时间,下面就总结下. 首先下载Apache httpd,我认为Apache Hans比较好: 一般这种情况下,你的python环境已经安 ...

  8. yii2史上最简单式安装教程,没有之一

    写一篇绝对堪称史上最easy的Yii2安装教程教你入门. 既然是安装Yii,我们先去官网下载一份Yii的高级模版,什么,你说打开页面乱七八糟的英文字母你看不懂?那这样大哥,你按照下面的截图进行操作好吧 ...

  9. 在Angular1.X中使用CSS Modules

    在Angular1.5中,增加了一个Component方法,并且定义了组件的若干生命周期hook,在代码规范中也是推崇组件化开发,但是很遗憾的是,CSS模块化组件化的问题并没有得到解决,大部分项目的打 ...

  10. 【性能诊断】五、并发场景的性能分析(windbg简介及dump抓取)

    windbg简介 Windbg是在windows平台下,强大的用户态和内核态调试工具.相比较于Visual Studio,它是一个轻量级的调试工具,所谓轻量级指的是它的安装文件大小较小,但是其调试功能 ...