使用fastlanematch自动化管理证书和描述文件

需要在Xcode的Targets->Signing&Capabilities勾选Automaticallymanagesigning。用这种方式,所有的工作包括AppId、证书、描述文件(ProvisioningProfile)的创建都由Xcode包办了,非常的方便。

这种方式对个人开发者非常友好,但是对团队开发来说有比较大的弊端,具体如下。

如图所示:

比如说,添加新设备后,如果描述文件配置里面没有勾选这个设备,这个设备是无法安装我们的应用的,所有每次都需要确保描述文件的SelectAll是否已勾选。

然后需要在Xcode上取消勾选Automaticallymanagesigning,同时设置对应的证书和描述文件(ProvisioningProfile)。

这种方式的优点是所有开发人员都共用一份证书和描述文件,缺点也非常明显:每次证书过期或者添加新的设备后,都需要手动去更新,然后重新分发其他人,操作起来非常麻烦。

下面我将详细介绍match的使用流程。

另外,当有多个App时,建议一个git分支对应一个App,这样,我们所有App的证书都在一个仓库里面,便于管理。

在终端定位到项目目录,注意先看项目目录下是否存在fastlane目录,如果没有的话,先执行fastlaneinit命令来初始化fastlane服务(后面会用到)。然后再执行fastlanematchinit命令,首先会提示让你选择存储方式,我们选git,然后再输入git仓库地址,最后会生成一个Matchfile的配置文件。接下来,我们修改一下Matchfile。

fastlanematchdevelopmentfastlanematchadhocfastlanematchappstore复制代码但是这种方式使用起来非常不方便,特别是用于自动化构建脚本,因为每次都要输入AppleId和密码;有的团队的做法是在Matchfile配置一个公用的AppleId,这样就不用每次输入账户和密码。

为什么要使用AppStoreConnectAPI?

创建AppStoreConnectAPI密钥

然后下载API秘钥(一个.p8文件),保存到项目的fastlane目录。注意:私钥只能下载一次,永远不会过期,保管好,如果丢失了,去AppStoreConnect后台撤销密钥,否则别人拿到也可以用。

为了更加方便使用,我们通过fastlane来配置几个常用的命令,将以下内容添加到你的fastlane目录下的Fastfile文件中:

当我们有新同事入职,或者需要在新的电脑上配置开发证书和描述文件,我们仅仅只需要一条fastlanematch_all命令即可。

很少会有这种需求,如果确实需要清空所有证书和描述文件的话,可以通过fastlanematch_nuke工具来处理:

desc"清空所有的证书和描述文件,慎用"lane:nuke_alldomatch_nuke(api_key:api_key,type:"development")match_nuke(api_key:api_key,type:"adhoc")match_nuke(api_key:api_key,type:"appstore")end复制代码注意:清空完所有的证书和描述文件后,已安装的测试包是无法使用的,谨慎使用。

1.通过Xcode来查看

先通过USB在电脑上连接iOS设备,然后在Xcode中打开菜单:Window->DeviceandSimulators,上面显示的Identifier这一项就是我们所需要的设备UDID。

2.通过第三方工具

原理:描述文件里面包含了所有的支持安装的设备的UDID,所以我们只需要看描述文件里面是否包含该设备的UDID就行了。在我们构建IPA包时,里面会嵌入一个叫embedded.mobileprovision文件(其实就是描述文件),判断我们的设备UDID是否在包含这个文件中,就能判断是否能安装(当然这只是其中的一个条件,其他的没在本文范围内,不做过多介绍)。

但是,这个文件是无法直接打开查看的,因为它经过了特殊的编码,其实质是一个plist文件,我们可以通过以下方式来查看它:

1.通过security命名解码查看

securitycms-D-iembedded.mobileprovision>result.plistopenresult.plist复制代码

THE END
1.创建测试证书私钥private\iot-edge-device-identity-<device-id>.key.pem与设备标识证书关联的私钥。 只要对 DPS 或 IoT 中心使用某种证书身份验证(指纹或 CA),就应在配置文件中指定。 创建Edge CA 证书 这些证书对于网关方案是必需的,因为 Edge CA 证书是 IoT Edge 设备向下游设备验证其身份的方式。如果不将任何下游设备连https://docs.microsoft.com/zh-cn/azure/iot-edge/how-to-create-test-certificates
2.ios开发证书,描述文件,bundleID的关系苹果为了控制应用的开发与发布流程,制定了一套非常复杂的机制。这里面的关键词有:个人开发者账号,企业开发者账号,bundle ID,开发证书,发布证书(又叫“生产证书”),开发描述文件,发布描述文件,推送证书等。初级开发者很难理解这中间的关系和作用。下文就对上述列出的关键内容和它们的关系做个详细介绍。 https://www.jianshu.com/p/21ebca8cadf6
3.iOS应用开发证书配置指南iOS证书和描述文件申请 首先你需要有一个苹果的开发者帐号,一个Mac系统。 如果没有开发者账号,可以先申请一个开发者账号,申请流程详见:iOS公司开发者账号申请教程。 如果你已经有了一个IDP,打开https://developer.apple.com/account/并登录到苹果MemberCenter,登录以后可以看到下面这个界面:https://blog.csdn.net/sinat_35861727/article/details/69990790
4.iOS的证书和描述文件是什么51CTO博客已为您找到关于iOS的证书和描述文件是什么的相关内容,包含IT学习相关文档代码介绍、相关教程视频课程,以及iOS的证书和描述文件是什么问答内容。更多iOS的证书和描述文件是什么相关解答可以来51CTO博客参与分享和学习,帮助广大IT技术人实现成长和进步。https://blog.51cto.com/topic/78e2509433d19e2.html
5.制作iOS证书与描述文件涂鸦开发者平台本文介绍了如何制作以下几种 iOS 证书或文件,您在涂鸦开发者平台构建 OEM App 应用时需要上传。文件类型证书或文件对应的苹果官方名称说明消息推https://developer.tuya.com/cn/docs/iot/ios-push?id=K989rskj262hu
6.编译提示描述文件和证书不匹配?appuploader使用教程1.这个是因为选错了描述文件(.mobileprofile文件),或者描述文件制作的时候没 有勾选对应的证书,导致描述和证书不一致不匹配,重新选择或者制作描述文件或 者证书。 PS:例如证书是ios app development,但是描述文件是app store类型 解决办法是需要先去证书管理先创建好对应的证书类型。 https://www.applicationloader.net/doc/questions/desc_and_cer_not_match.html
7.未付费99美金苹果开发者申请iOS证书打包测试介绍本文介绍使用未1、证书描述文件有效期只有7天,7天后要重新申请iOS证书打包(付费的一年) 2、最多只能添加3个udid测试设备(最多可以让3个手机安装,付费的100个) 3、只能通过手机助手安装如爱思助手安装(不能上传分发平台扫码下载安装,付费开发者可以扫码安装) 免费个人开发者账号申请ios证书打包ipa测试分五步进行 https://juejin.cn/post/6844903954225070088
8.iOS证书(.p12)和描述文件(.mobileprovision)的导出和使用方法开发证书的详细流程 选择证书进入2、选择iOS推送证书开发版,输入名称等,选择好应用id,点击ok创建3、选择对应申请的,点击p12文件下载三、申请iOS推送证书版(生产环境)配合iOSiOS推送证书是用于推送 通知功能配置,需要配置到入极光推送、个推等推送平台。iOS推送证书不能直接用于打包ipa,且推送证书只有p12,无关联描https://www.pianshen.com/article/23001153297/
9.iOS集成环信推送,最详细流程(证书创建环信集成测试)1. 首先我们先去官网创建AppID和描述文件. 我们是要集成推送的,所以我们需要用到cer文件,这个东西实际上就是苹果给开发者颁发的一个证书,我们需要将它导入到我们的AppId配置里,否则的话是无法集成推送的,还记得安装应该的时候会提示”无法安装为认证发布者的应用”之类的信息么,我猜测这个cer文件就是我们身份的标示,https://www.easemob.com/news/1255
10.2022年最新内测分发内测托管上架AppStore流程OK,到了这里,所有需要准备的证书和描述文件都准备完毕。 (5)Xcode 配置 配置证书和签名 因为XCode会自动创建证书和bundle id 所以要先取消【Automatically manage signing】 配置Profile描述文件 debug和release两种环境需要分别配置描述文件 debug对应【Development】 https://www.pgyer.com/enterpriseServiceMarket/ift6bS
11.无法安装此app,因为无法验证其完整性,解决方案安装包1.安装包不完整 首先申请我所有分享的破解软件全部都有自己校验过,一般不会存在问题出非你手机版本跟我相差较大,所以不可能存在什么应用不完整的情况,附上我的资源:心科技圈(原玩机家园) 2.证书及描述文件过期 (没有签名或者不完整) 简单来说就是你们没有安装签名 https://www.163.com/dy/article/G5SQ7AQF055227C0.html
12.iOSAPP证书配置有一些公司不能开发者账号: 给profile+p12文件,首先搜集你的id,也可上淘宝上买证书 1. cer证书: 功能: 认证电脑,确定这台电脑是开发者所有,才可以调试打包 上传电脑唯一标识,然后生产、安装证书到本地,调试的时候需要判断证书 2. 描述文件: cer+udid(手机唯一标识)+bundleid ---> 登录开发者账号 -》证明https://wsa.jianshu.io/p/9f4be91372db
13.iOS生成证书描述文件打包上架Appstore详细流程发布描述文件 以及AdHoc模式都是这样生成 多人开发时,我们需要将证书以及描述文件共享出来,上面提到,证书是跟电脑绑定在一起的,这时,我们可以到处.p12 文件,这样,就可以实现多人协同开发 将保存的证书,描述文件,双击安装。 打开钥匙串访问,选择 我的证书,这里我们可以看到刚才安装的证书, 选择你需要共享的证书,双击https://developer.aliyun.com/article/1358014
14.教程uni需要注意的是,无论使用哪种安装测试方式,都需要确保设备的 UDID 已经添加到描述文件中,否则无法进行安装测试。 下图展示了appuploader工具界面: 总结 本文介绍了在uni-app中解决iOS打包时出现profile文件与私钥证书不匹配的问题的方法。通过重新生成Profiles文件、重新生成开发证书/上架证书以及借助appuploader工具进行安装测https://maimai.cn/article/detail?fid=1824161734&efid=bCENd9nAnJhF0-26vkHVXA
15.苹果IOS证书申请如果你在开发者中心(Developer Center)修改了 App应用ID内的 Capabilities(例如启用了 Associated Domains),需要重新生成或下载.mobileprovision描述文件。 .mobileprovision描述包含了关联你的应用 ID、证书和设备的信息,确保它反映了最新的配置。 Capabilities 主要与配置文件相关,而不直接涉及证书。 http://www.49855.net/?p=3687
16.iOS超级签名之描述文件的实现过程IOS这里耗时主要是在等运维人员提供相关证书文件,千万别给错了,否则很难 Debug。 下载描述文件后不能自动跳转到安装界面 在iOS 12.2 上苹果做了改动,下载完后需要用户手动进行安装。点击 设置 —— 已下载描述文件,会自动弹出描述文件安装界面,点击右上角安装即可。 官方说明点这儿在iPhone 或 iPad 上安装配置描述文件https://www.jb51.net/article/180768.htm
17.macOS服务器使用手册在macOS 服务器中,配置证书和描述文件管理器从而开始注册 Apple 设备。 进一步了解描述文件管理器 若要在《macOS 服务器使用手册》中探索,请点按页面顶部的“目录”,或者在搜索栏中输入字词或短语。 macOS 服务器使用手册 欢迎使用 macOS 服务器介绍 设置macOS 服务器 https://www.apple.com.cn/cn/support/osxserver/