2024 【Delphi 12】苹果ios开发环境配置(五星保姆级)

目录

一、创建证书

1. 创建证书签名请求:(在苹果电脑上操作): .certSigningRequest 文件

2. 创建证书:在苹果的 开发者网站 上操作

重复以上步骤并下载对应的证书文件如下:

3. 创建标识符(Identifiers)

A、添加新的App ID

4. 添加开发设备(Devices)

5. 创建描述文件(Profiles)

A. 创建 开发环境描述文件

B. 创建 上架环境(App Store)描述文件

二、本地安装证书文件

三、XCode 设置

1. 添加账号:

四、Delphi 如何配置

1. 安装平台开发助手(Installing th Platform Assitant)

2.  配置分发连接文件(Connect Profile Manager)

3. 指定描述文件

4. 下载SDK

五、常见问题:

1. 钥匙串密码

2. 出现如下错误提示

3. 出现如下错误提示


假设条件已经有苹果开发者账号(如果没有,请先注册好苹果开发者账号)

开发环境:

序号名称版本说明
1开发机操作系统Windows 11 家庭中文版 23H2联想T14p
2MAX系统(Apple M1 Max)Ventura 13.5.164G 2TB
3Delphi12.0(Version 29.0.51961.7529 )
4XCode13.2.1(13C00)

        本文根据Delphi的官方帮助步骤进行操作的,官方帮助比较粗线条,如果实战还是需要细化,所以本文进行了详细的步骤描述和细化,具有完全的可操作性。

一、创建证书

        关于IOS的开发,需要配置证书、密钥、管理标识符、功能配置等等,很是繁杂,以前也配置过,这次重新配置下,顺便记录,以方便大家学习。

        如果要开发IOS,首先需要在苹果开发者官网申请注册账户,付费后才可以,每年大概688元,关于注册账户等,不在本文讨论范围。

        苹果证书的类型很多,我们一般如果使用IOS开发、上架等,也就只需要如下几种证书:详细的证书类型参见我的另外一篇博文。

1. 创建证书签名请求:(在苹果电脑上操作): .certSigningRequest 文件

        打开 钥匙串访问 程序:

        打开方法1:按下command + 空格键,出现查询窗口,输入 钥匙串访问 即可

        打开方法2:应用程序中打开  启动台 -> 其他 ->钥匙串访问

  • 选取“钥匙串访问”>“证书助理”>“从证书颁发机构请求证书”。
  • 在“证书助理”对话框中,在“用户电子邮件地址”栏位中输入电子邮件地址,也就是苹果开发者账号。
  • 在“常用名称”栏位中,输入密钥的名称 (例如,Gita Kumar Dev Key)。
  • 将“CA 电子邮件地址”栏位留空。
  • 选取“存储到磁盘”,然后点按“继续”。

 

注意:

        用户电子邮件地址:就是注册苹果账户时的邮件地址。

Key文件存储在桌面,文件名称为:CertificateSigningRequest.certSigningRequest

   

2. 创建证书:在苹果的 开发者网站 上操作

        首先通过账号登录到 苹果开发者网站,如果已经注册好账号,并且都已经付费成功,登录后看到的将是如下页面:

选择: 证书(英文),如果你访问的是英文界面,那么看到的会是英文,稍微不一样。

分别选择:Apple Development、Apple Distribution、iOSAppDevelopment、iOS Distribution 后继续

选择证书文件,就是第一步创建证书签名请求中生成的证书文件

上传后,苹果会允许你下载生成好的证书、标识等文件:

此时下载的文件是:development.cer

重复上述步骤,依次可以创建开发和上架的证书,结果如下:

重复以上步骤并下载对应的证书文件如下:

特别说明最后两个文件是描述文件,在 5.创建描述文件 步骤中生成。

3. 创建标识符(Identifiers)

        App ID 可识别预置描述文件中的 App。它是一个由两部分组成的字符串,用于标识来自某一开发团队的一个或多个 App。App ID 共有两类:适用于单个 App 的精确 App ID,以及适用于一组 App 的通配符 App ID。在一个 App ID 中启用的 App 功能将作为一个允许列表,为一个或多个 App 提供可用功能。你可以在创建 App ID 时启用 App 功能,也可以稍后修改这些设置。精确 App ID 将默认启用“App 内购买项目”功能。自 Xcode 11.4 起,可以使用同一 App ID 来构建 iOS、macOS、Apple tvOS 和 watchOS App。

A、添加新的App ID

选择 App

选择独立的App ID:

进行注册(Register):

注册完成后结果如下:

4. 添加开发设备(Devices)

        出现如下界面,输入设备名称和 ID,设备名称和ID可以在XCode中查询到,链接好设备后,打开XCode ,在Windows菜单的devices and Simulators子菜单。

  

继续后:

 进行注册(Register):

        至此,已经成功注册了一个开发者设备,以后调试的时候就可以直接使用了,如果还需要增加调试设备,按照上面的步骤增加即可。

5. 创建描述文件(Profiles)

        Profiles用于将 Certificates、Identifiers、Devices结合起来,形成一个描述证书、标识符的描述统一文件

A. 创建 开发环境描述文件

继续后:

可以不考虑7天离线支持,因为7天时间实在太短,如果有网络也就不需要了。

关联设备:

继续:

生成描述文件:

点击 Download 会下载一个描述文件:MDSIT.mobileprovision

B. 创建 上架环境(App Store)描述文件

继续:

继续:

继续:

生成

点击现在会下载一个文件:MDSIT_App_Store.mobileprovision

经过以上步骤后,看到的结果如下:

二、本地安装证书文件

        将第一步创建证书中创建的证书文件下载到本地。将证书下载到 Mac,然后双击 .cer 文件安装到钥匙串访问中。确保将私钥和公钥的备份副本保存在安全的地方。

        所有的证书文件列表如下:

分别双击 development.cer 等文件进行安装:

安装成功后,会在 钥匙串访问 中看到:

三、XCode 设置

1. 添加账号:

        打开XCode(我的版本: 14.3.1),选择settings

  

上面这里我的已经添加了2个开发者账号。

特别注意

        如果后台已经设置好证书,而且上面已经显示有了,就不要在按左下脚的 + ,否则就会重复安装同一个证书,这样就会导致app签名失败。

        万一出现了上述情况,解决办法是:

1. 在苹果账号后台删除重复的证书;

2. 在本地钥匙串中删除重复的证书;

3. 重新打开xcode查看就正常了。

四、Delphi 如何配置

        在Delphi系统中,首先需要进行环境配置,在进行环境配置前,需要先在Mac电脑上运行一个PAServer程序,该程序负责将Delphi的命令翻译成XCode的相关调用。

1. 安装平台开发助手(Installing th Platform Assitant)

        在MAC电脑上安装平台开发助手(PAServer),不同的Delphi版本对应不同的PAServer,当前Delphi 12对应的是PAServer23.0.pkg。这个文件位于Delphi的安装目录中,默认位置:C:\Program Files (x86)\Embarcadero\Studio\23.0\PAServer\PAServer23.0.pkg。

注意:

  1.   不同的Delphi版本对应不同的 PAServer,不可混用;
  2.   Delphi 11对应的是PAServer22.0.pkg,以此类推;

将这个文件拷贝到MAC的桌面或者其他目录,然后双击运行即可完成安装。

  

        按照默认设置安装,安装完成后会在【应用程序】中包含该程序。

重点:

        在进行下述步骤前,必须运行PAServer-23.0这个程序,双击即可运行!运行后界面如下:

运行起来后,输入密码,可以不用输入。如果输入就需要记录下来,后面Delphi 连接的时候是需要的。

记住如下参数:

序号参数名称内容
1密码:password
2端口号:port64211
3IP地址:192.168.110.111

2.  配置分发连接文件(Connect Profile Manager)

打开Delphi。选择菜单Tools -> Options -> Deployment -> Connection Profile Manager -> Add

完成后,界面如下:

按下 Test Connection 按键,如果已经成功打开 PAServer程序,不出意外,则会出现如下提示:

恭喜,这一步成功了!

3. 指定描述文件

        因为我们可能同时开发很多程序,不同的程序对应不同的描述文件(Profiles),所以针对不同的程序我们需要选择正确的描述文件。

        打开Delphi ,创建一个FMX项目,然后在项目文件上右键菜单选择 Options。

选择: Deplyment -> Provisioning

选择合适的平台Target,构建类型Build Type,描述文件Provison Profile后,就会出现我们在苹果后台配置的信息。

最后记得保存! 恭喜,这一步也设置成功了!

4. 下载SDK

打开Delphi。选择菜单Tools -> Options -> Deployment -> SDK Manager

选择 Add... 然后进行导入,保存即可。

重点:

        在进行导入ios的SDK前,需要在苹果的XCode上先下载好相关版本的SDK,否则无法下载。

5. 切记绑定好 App ID

需要对应到苹果官网上的 identifiers

恭喜,这一步也完成了!

五、常见问题:

1. 钥匙串密码

在Delphi中编译完成后,进行签名是,出现如下提示:

这里输入苹果电脑的开机登录密码即可!

2. 出现如下错误提示

一般是PAServer程序没有打开、或者端口号设置不一致、或者IP地址设置不一致!,打开PAServer,并且按回车标识登录。

3. 出现如下错误提示

表示运行的PAServer的版本和Delphi的版本不一致,一般出现在对各Delphi版本开发时会出现。

欢迎有问题的朋友随时交流!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/52967.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Debezium+Kafka:Oracle 11g 数据实时同步至 DolphinDB 运维手册

目前我们已经支持基于开源技术 Debezium Kafka,从 Mysql 和 Oracle 11g 实时同步数据到 DolphinDB 中。由于当前方案涉及到四个程序的部署,而且具体的 Source 同步任务和 Sink 同步任务还需要额外管理,在运维上具有一定难度。 本文将基于 O…

Ecology10中的CAS身份认证问题

单点登录(SSO)是一种身份验证解决方案,可让用户通过一次性用户身份验证登录多个应用程序和网站。实现SSO的方式有很多种,比如Kerberos、SAML、OAuth2、JWT、OpenID、CAS、LDAP等。 CAS CAS (Central Authentication Service) 最初…

西中区2024年度安全知识竞赛活动方案

为有效预防安全生产事故的发生,深化西中区全体员工对安全生产的认识,切实提升全体人员的安全意识和自我保护能力,夯实安全知识基础,丰富安全文化内涵,推动安全生产工作更加规范化、系统化,根据西中区安全生…

git 回滚的三种方式

按照从旧到新的顺序 你依次提交了 1 2 3 4 5 现在你想回到1 如何操作 第一种方法 hard reset git reset --hard 执行命令后 你会发现 效果实现了 东西都回到了那次更改 但是2345的更改都没了 并且你会发现 你有更新 这是因为这个hard reset 只会改本地的 远程的不改 一更新就…

EasyCVR视频汇聚平台:巧妙解决WebRTC无法播放H.265视频的难题

随着科技的飞速发展,视频监控已经成为现代安全管理不可或缺的一部分,广泛应用于智慧工地、智慧煤矿、智慧工厂、智慧社区和智慧校园等多个领域。在这个过程中,视频编码技术和实时通信技术显得尤为重要。EasyCVR视频汇聚平台,凭借其…

Python爬虫(一文通)

Python爬虫(基本篇) 一:静态页面爬取 Requests库的使用 1)基本概念安装基本代码格式 应用领域:适合处理**静态页面数据和简单的 HTTP 请求响应**。 Requests库的讲解 含义:requests 库是 Python 中一个…

机器人外呼有哪些优势?

机器人外呼,作为一种结合了计算机技术和人工智能技术的自动化工具,具有多重显著优势。以下是其主要优势的详细阐述: ### 1. 高效性 * **大幅提升工作效率**:机器人外呼可以全天候、不间断地进行工作,不受时间、地点和…

pytest+pycharm+HTMLTestReportCN实现接口自动化

前提:已安装pycharm,已配置python环境 第一步:新建一个py类,用来执行all的测试用例 import HTMLTestReportCN import unittest, os, yagmail# -*- coding: utf-8 -*- """ Time : 2024/9/2 14:50 Auth …

/单元测试

承接上文 统一异常处理&#xff0c;封装结果-CSDN博客 ******************************************** 登录业务 Service public class EmployeeServiceImpl extends ServiceImpl<EmployeeMapper, Employee> implements EmployeeService {Resourceprivate JwtUtils j…

数据库透明加密的定义与原理

数据库透明加密(TDE)是一种先进的加密技术&#xff0c;主要用于保护存储在数据库中的敏感数据&#xff0c;防止未经授权的访问和数据泄露。以下是对数据库透明加密的详细解析&#xff1a; 一、定义与原理 定义&#xff1a;数据库透明加密是一种在数据库管理系统(DBMS)中集成加密…

苹果笔记本电脑能不能玩游戏?苹果电脑玩游戏咋样?

过去Mac玩不了游戏最大的问题&#xff0c;就是图形API自成一体&#xff0c;苹果既不支持微软的DirectX&#xff0c;同时为了推广自家的Metal图形API&#xff0c;又对OpenGL和Vulkan两大主流的通用API敬而远之。游戏生态、硬件瓶颈让苹果电脑不适合玩游戏。 不过说到底&#xf…

点餐收银小程序

一、项目概述 Hi&#xff0c;大家好&#xff0c;今天分享的项目是《点餐收银小程序》。 系统含管理员/商家/用户三种角色&#xff0c;商家能维护菜式类别、维护菜品信息&#xff0c;用户在小程序能够选择门店&#xff0c;查看门店下各个分类的菜式信息&#xff0c;并进行加购…

ai免费生成ppt软件有哪些?我推荐秒出PPT

现在市面上的ai生成PPT软件非常的多。有收费的&#xff0c;也有不收费的&#xff0c;生成的效果也各不相同。要选择一个性价比高的确实难度不小。 我在使用了不少的产品之后&#xff0c;说一说我的心得。 首先就是&#xff0c;大部分免费的ai生成ppt产品并不好用。我怕不排除…

Cortex-A7的运行模式和寄存器组详解

0 参考资料 ARM Cortex-A(armV7)编程手册V4.0.pdf ARM体系结构与编程第2版2 Cortex-A7运行模式 2.1 运行模式 Cortex-A7共有9种运行模式&#xff0c;如下图所示&#xff1a; 除了用户模式之外其它模式均属于特权模式&#xff0c;在特权模式下处理器可以访问所有系统资源&am…

Golang | Leetcode Golang题解之第384题打乱数组

题目&#xff1a; 题解&#xff1a; type Solution struct {nums, original []int }func Constructor(nums []int) Solution {return Solution{nums, append([]int(nil), nums...)} }func (s *Solution) Reset() []int {copy(s.nums, s.original)return s.nums }func (s *Solu…

使用docker容器部署考试系统

8.30 回顾 1、使用harbor仓库 python --version yum -y update yum -y install python2-pip 部署考试系统 使用docker部署project-exam-system 1、在一台主机内&#xff0c;实现容器的编排看&#xff0c;发布考试系统 2、环境准备 docker docker-compose docker脚本 …

【Next】2. 项目构建

打开 Next.js 的官方文档&#xff1a;https://nextjs.org/docs/getting-started/installation&#xff08;国内文档不够新&#xff09; Next.js 版本 14.2 &#xff0c; Node.js 的版本要求必须 > 18.18。 Next 有两种开发模式&#xff0c;下面讲新的 APP Router。 创建项…

【R语言】基于Biomod2集成平台探究物种分布区的构建流程(SDMs)(持续更新中。。。。。。)

Species Distribution Models 1.写在前面2.物种分布模型介绍3.输入数据准备及预处理3.1.如何从GBIF网站上获取分布点数据&#xff08;基于rgbif包&#xff09;3.2.分布点稀疏处理&#xff08;基于spThin函数&#xff09;3.3.如何获取环境变量数据&#xff08;基于getData函数&a…

创建一个Spring MVC项目(配置,导入依赖,以及前端控制器)

Tomcat&#xff08;10.1.28&#xff09;配置 详细讲解&#xff01; 链接https://blog.csdn.net/or77iu_N/article/details/141266535?spm1001.2014.3001.5502 1、创建 Java Web 项目 File -> New -> Project 2、导入 Spring MVC 相关依赖 <dependency> <gro…

汽车乘客热舒适度大挑战,如何利用仿真技术提高汽车环境舒适度

舒适性在人们选择汽车的决定性方面占比越来越重&#xff0c;而汽车乘员舱环境的舒适性是指为乘员提供舒适愉快便利的乘坐环境与条件&#xff0c;包括良好的平顺性、车内的低噪声、适宜的空气环境以及良好的驾驶操作性能。 舒适性 经济性 安全性、动力性 典型的乘员舱热舒适性模…