XE6 & IOS开发之开发者账号、苹果证书(3):关于在XE6中使用苹果证书的简单介绍
网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容、傻瓜式的表达来告诉你想要的答案。
原创作品,请尊重作者劳动成果,转载请注明出处!!!
1.关于在XE6中使用苹果证书。
注意,以下讨论都是以"合法注册开发者账号并支付年费"为前提,利用无证书生成iPA的请无视本文:
---------------------------------------------------------------
1.首先,我们打开XE6,打开官方的Setting Demo这个工程。
打开后,平台选择为'iOS Device'。这里可以看到,IOS工程可以构造3种类型:
1.Debug(主要用于调试,如果选择该类型编译App,则该App安装后授权有效期为3个月)
2.Application Store(上架到AppStore时需要此类型)
3.Ad hoc(这个叫做无线发布,即开发人员可以用此类型而不需经过AppStore就能发布测试版、发布版)

2.要使编译出来的App能对这3种类型生效,我们必须针对每个App工程都去配置一下。点击XE6菜单栏'project',点击'Options'。

3.在弹出的窗体中,点击左侧的'Provisioning'。

4.Target中选择'iOS Device platform',表示我们配置此工程的iOS平台。

5.Buind Type中选择:iOS Device-Application Store。
可以看到,若要编译为此类型,则需要配置3项:发布证书、Profile、AppID。

6.Buind Type中选择:iOS Device-Debug。
可以看到,若要编译为此类型,则仅需要配置1项:开发证书,目的只是为了给程序签名。
这里不需要发布证书,是因为此种类型的App不能上架到AppStore。

7.Buind Type中选择:iOS Device-Ad hoc。
可以看到,若要编译为此类型,则需要配置2项:发布证书、Profile。

以上设定我们以假设你是一个合法的开发者(已向苹果上交'保护费'),并已经生成了自己的证书等文件为前提,
至于如何用开发者账号来生成自己的证书等文件,请自行百度资料,或参考上篇文章,在这里这个不是我们的讨论目标。
值得注意的是,'iOS Device-Ad hoc'这种类型很有意思,由于它可以不经AppStore就能够发布成为正式版本,
所以对于这类App,安装方式则变为3种:(被安装设备无需越狱!)
1.取得iPA文件后,用iTools等手机管理工具安装。
2.上传到XX助手并请求发布,则所有装有XX助手的用户都可以刷新看到该App并下载安装。(这里只是举例为XX助手)
3.发布为网页链接,则所有浏览到该链接的用户都可以直接点击网页链接来下载安装App。
(例如,在设备的safari上直接打开http://cloud.189.cn/wap/index.jsp,如下图:)

在'点击免费安装',设备会自动下载并安装App,而不需要进入AppStore去下载安装。
原因在于,编译为'iOS Device-Ad hoc'时,同时会产生一个plist文件,该文件中指示了iPA的真正地址。
这种安装方式其实就是使用企业证书签名App的方式来安装程序。
同样,我们也可以使用个人证书,结合Profile给设备授权后,用此方式进行发布和安装,从而绕过了 "上架AppStore并须经iTunes安装" 这种约定。
PS:
---------------------------------------------------------------
FireMonkey移动开发可加QQ群:165232328 (本人非管理员,仅仅其中一成员,此群高手林立,期待各位Delphi爱好者共同交流)。
XE6 & IOS开发之开发者账号、苹果证书(3):关于在XE6中使用苹果证书的简单介绍的更多相关文章
- XE6 & IOS开发之开发者账号、苹果证书(2):关于苹果证书
网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 1.关于苹果证书. 注意 ...
- XE6 & IOS开发之开发者账号、苹果证书(1):关于开发者账号
网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 关于苹果开发者账号, 注 ...
- iOS 开发 公司开发者账号,在多台Mac上合作开发,共用一个账号和证书--图文详解
参考 导出证书申请的MAC里的Xcode的开发者账号 .developerprofile 导出的开发者账号文件.developerprofile 导出PKCS12既是.p12文件 所拷贝的资料, .d ...
- iOS开发——关于开发者账号引发的血案
这里不介绍怎么申请开发者账号,那个网上的教程太多了.这里讲点有意思的. 如果你们公司比较,怎么说呢,呵呵?管理层不懂开发,不管事,申请开发者账号的人员又比较小白,或者别有用心,用私人邮箱来申请,申请的 ...
- IOS开发之开发者账号遇到的bug
今天使用开发者账号过期的问题,文件显示 其实今天的问题和这个没有关系,即使上面显示此证书的签发者无效,有时候也是可以用的. 我这里情况比较奇葩,刚刚生成的开发者账号,显示还是"......无 ...
- XE6 & IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相)
网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 1.自己给自己颁发证书, ...
- XE6 & IOS开发之免证书真机调试(2):连接真机并运行App(有图有真相)
网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 连接真机前,请先确保真机 ...
- iOS开发从申请账号到上线APP Store步骤
1.developer.apple.com 申请开发者账号 2.根据API Cloud创建证书: http://docs.apicloud.com/Dev-Guide/iOS-License-Appl ...
- iOS AppStore个人开发者账号申请
一.申请Apple Developer账号 1.注册App ID 1.打开苹果开发者网页,选择Account,注册Apple ID. 2.填写注册信息 3.地区选择China,填写好验证码,点击C ...
随机推荐
- 快速删除.svn文件夹
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] @= ...
- http 学习 1-2 chapter2-URL与资源
URL是因特网资源的标准化名称.URL指向每一条电子信息,告诉他们位于何处,以及如何与之进行交互. URL语法,以及各种URL组件的含义及其所做的工作. 很多Web客户端都支持额URL快捷方式,包括相 ...
- 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
腾讯优测是专业的移动自动化测试平台,提供多维度的自动化测试服务,让测试更简单! 近期有报道称,澳大利亚悉尼市新某大学的一名男生在课堂上看电影,不料耳机没有插好,变成了现场直播... 如果你认为耳机没插 ...
- JavaScript模块化编程
为什么模块化很重要?因为有了模块,我们就可以更方便的使用别人的代码,想要什么功能,就加载什么模块. 万事都有规矩,就是规范化! 目前,通行的Javascript模块规范有两种: CommonJS和AM ...
- python unicode 和 str 类型的关系
python (2.X)在进行 运行时候字符串运算的时候, 分为两种类型 str, unicode 前者是 二进制的形式进行对字符串的保存, 后者是 以unicode的方式进行保存, 一般的工作方式为 ...
- python 后台爆破工具(多线程)
非阻塞 q.put(item) 写入队列,timeout等待时间 q.put_nowait(item) 相当q.put(item, False) threads多线程 首先导入threadin ...
- DOCTYPE声明的作用是什么?严格模式与混杂模式如何区分?
HTML语言已经存在太久了,目前必然会有一些不同版本的文档存在,为了能够让浏览器清楚你的文档的版本类型和风格,需要在文档的起始用DOCTYPE声明制定当前文档的版本和风格.如果在网页中提供了版本信息, ...
- split,slice,splice,replace的用法
split()方法用于把一个字符串分割成字符串数组 str.split("字符串/正则表达式从该参数制定额地方分割str",可选,可指定返回数组的最大长度,如果没设置参数,整个字符 ...
- web前端的学习.
web前端的了解 1.前端技术包括JavaScript.ActionScript.CSS.xHTML等“传统”技术与Adobe AIR.Google Gears,以及概念性较强的交互式设计,艺术性较强 ...
- js-PC版监听键盘大小写事件
//获取键盘按键事件,可以使用keyup. //问题:获取到键盘的按下Caps lock键时,不能知道当前状态是大写.还是小写状态. //解决: 设置一个全局判断大小写状态的 标志:isCapital ...