搞懂iOS证书一篇就够

作者: 三也视界 | 来源:发表于2023-06-23 14:27 被阅读0次

    因为苹果的安全策略,通过签名机制保证手机上的每个App都是经过苹果认证的。
    App的安装方式有四种:

    通过App Store安装。
    开发者可以通过Xcode安装。
    Ad-Hoc 测试证书打包的App,数量限制100。
    In-House 企业版证书打包App,信任企业证书后可以使用。

    Identifiers (应用标识 Bundle ID 使用的服务)

    选择页面的 “Identifiers" 可查看到已申请的所有 App 应用标识,点击页面上的加号来创建一个新的应用标识:

    image

    选择标识类型为 “App IDs”,然后点击 “Continue”

    image

    平台选择 “iOS,tvOS,watchOS”,Bundle ID 选择 “Explicit”,在 Description 中填写描述,然后填写 Bundle ID,Bundle ID 要保持唯一性,建议填写反域名加应用标识的格式 如:“io.dcloud.hellouniapp”, 然后点击 “Continue”
    注意:在 HBuilderX 中 App 提交云端打包时界面上的 AppID 栏填写的就是这个 Bundle ID

    image

    接下来需要选择应用需要使用的服务(如需要使用到消息推送功能,则选择“Push Notifications”),然后点击 “Continue”
    注意:如果App用不到的服务一定不要勾选,以免响应审核

    image

    确认后选择提交,回到 identifiers 页面即可看到刚创建的App ID:

    image

    至此,App ID 已经创建完毕,接下来开始创建开发证书,在创建开发证书前,需要先生成证书请求文件

    生成证书请求文件

    不管是申请开发 (Development) 证书还是发布 (Distribution) 证书,都需要使用证书请求 (.certSigningRequest) 文件,证书请求文件需在Mac OS上使用 “钥匙串访问” 工具生成。

    在“Spltlight Search”中搜索“钥匙串”并打开 “钥匙串访问” 工具:

    image

    image

    打开菜单 “钥匙串访问”->“证书助理”,选择“从证书颁发机构请求证书...”:

    image

    打开创建请求证书页面,在页面中输入用户邮件地址、常用名称,选择存储到磁盘,点击 “继续” :

    image

    文件名称为“CertificateSigningRequest.certSigningRequest”,选择保存位置,点击 “存储” 将证书请求文件保存到指定路径下,后面申请开发(Development)证书和发布(Production)证书时需要用到

    image

    申请开发(Development)证书和描述文件

    开发(Development)证书及对应的描述文件用于开发阶段使用,可以直接将 App 安装到手机上,一个描述文件最多绑定100台测试设备(开发证书不能用于发布应用到 App Store)。

    申请开发(Development)证书(Certificates cer证书 证书请求文件 本地p12 证书(带密码))

    在证书管理页面选择 “Certificates" 可查看到已申请的所有证书(TYPE:Development 为开发证书,Distribution为发布证书),点击页面的加号来创建一个新的证书:

    image

    在 “Software” 栏下选中 “iOS App Development” 然后点击 “Continue”:

    image

    接下来需要用到刚刚生成的证书请求文件,点击“Choose File...”选择刚刚保存到本地的 “CertificateSigningRequest.certSigningRequest”文件,点击 “Continue” 生成证书文件:

    image

    生成证书后选择 “Download” 将证书下到本地 (ios_development.cer):

    image

    双击保存到本地的 ios_development.cer 文件,会自动打开 “钥匙串访问” 工具说明导入证书成功,可以在证书列表中看到刚刚导入的证书,接下来需要导出 .p12 证书文件,选中导入的证书,右键选择 “导出...”:

    image

    输入文件名、选择路径后点击 “存储”:

    image

    输入密码及确认密码后点击 “好”:

    image

    至此,我们已经完成了开发证书的制作(得到了 xxx.p12 证书文件),接下来,继续生成开发阶段所需的描述文件,在生成描述文件之前,需要先添加调试设备(iPhone 、iPad)

    添加调试设备 Devices

    开发描述文件必须绑定调试设备,只有授权的设备才可以直接安装 App,所以在申请开发描述文件之前,先添加调试的设备。
    (如果已经添加设备,可跳过此节)

    在证书管理页面选择 “Devices”,可查看到已添加的所有设备信息,点击页面上的加号来添加一个新设备:

    image

    填写设备名称 和 UDID(设备标识):

    image

    获取设备UDID方法,将设备连接到电脑,启动 iTunes,点击此区域可切换显示设备的 UDID,右键选择复制

    输入完成后,点击“Continue” 继续完成添加即可;
    接下来继续申请描述文件

    申请开发 (Development) 描述文件 ( Profiles 绑定bundle ID 要绑定的证书.mobileprovision)

    在证书管理页面选择 “Profiles”,可查看到已申请的所有描述文件,点击页面上的加号来添加一个新的描述文件:

    image

    在 “Development” 栏下选中 “iOS App Development”,点击“Continue”按钮:

    image

    这里要选择之前创建的 “App ID” (这里是“io.dcloud.hellouniapp”),点击“Continue”:

    image

    接下来选择需要绑定的证书,这里建议直接勾选 “Select All”,点击“Continue”:

    image

    选择授权调试设备,这里建议直接勾选 “Select All”,点击 “Continue”:

    image

    输入描述文件的名称(如“HelloUniAppProfile”), 点击 “Generate” 生成描述文件:

    image

    点击“Download”下载保存开发描述文件(文件后缀为 .mobileprovision)

    image

    至此,我们已经得到了开发证书(.p12)及对应的描述文件(.mobileprovision),接下看一下如何制作发布证书及发布描述文件

    申请发布(Distribution)证书和描述文件

    发布 (Production) 证书用于正式发布环境下使用,用于提交到Appstore审核发布。发布证书打包的 ipa,不可以直接安装到手机上

    申请发布(Production)证书 (Certificates cer证书 证书请求文件 本地p12 证书(带密码))

    在证书管理页面选择 “Certificates" 可查看到已申请的所有证书(TYPE:Development 为开发证书,Distribution为发布证书),点击页面的加号来创建一个新的证书:

    image

    在 “Software” 栏下选中 “App Store and Ad Hoc”,点击 “Continue”:

    image

    接下来同样需要用到之前生成的证书请求文件,点击“Choose File...”选择刚刚保存到本地的 “CertificateSigningRequest.certSigningRequest”文件,点击 “Continue” 生成证书文件:

    image

    生成证书成功,选择“Download” 将证书下载到本地 (ios_production.cer):

    image

    同样双击保存到本地的 ios_production.cer 文件将证书导入到 “钥匙串访问”工具中,可以在证书列表中看到刚刚导入的证书,接下来需要导出 .p12 证书文件,选中导入的证书,右键选择 “导出...”:

    image

    输入文件名、选择路径后点击 “存储”:

    image

    输入密码及确认密码后点击 “好”:

    image

    至此,我们已经完成了发布证书的制作(得到了 xxx.p12 证书文件),接下来,继续生成发布描述文件

    申请发布 (Distribution) 描述文件

    在证书管理页面选择 “Profiles”,可查看到已申请的所有描述文件,点击页面上的加号来添加一个新的描述文件:

    image

    在 “Distribution” 栏下选中 “App Store”,点击“Continue”按钮:

    image

    这里要选择之前创建的 “App ID” (这里是“io.dcloud.hellouniapp”),点击“Continue”:

    image

    接下来选择需要绑定的发布证书(iOS Distribution),这里勾选刚刚生成的发布证书”,点击“Continue”:

    image

    接下来输入描述文件的名称(如“HelloUniAppProfileDistribution”), 点击 “Generate” 生成描述文件:

    image

    然后点击 “Download” 将描述文件下载到本地(文件后缀为 .mobileprovision)

    至此,我们已经得到了发布证书(.p12)及对应的发布描述文件(.mobileprovision)

    revoke证书对生产、测试环境的影响

    (1)revoke生产环境证书是不会影响已上架的app。
    (2)revoke开发环境证书,则安装过该证书的app的用户将无法打开该app了,并且一点击app会出现闪退现象。这时就需要开发人员重新生成开发证书后打包app了。

    Missing private key出现的原因

    (1)忘记mac开机密码,在开机时进入终端重设密码,会导致私有key丢失。
    (2)证书生成的源电脑不是你所用的电脑,要向源电脑请求p12文件和描述文件。具体可见“在团队中,证书文件管理”。

    在团队中,证书文件管理
    用XCode打包时,有时系统会提示“missing private key”等错误。打开钥匙串,在“登录”选项查看种类为“证书”的名称,是否含有三角符号,没有代表缺失private key 。如下图:


    image.png

    在别人的电脑上要成功安装,须具备两个文件
    (1)该证书导出的“.p12”文件
    (2)苹果开发者中的与“证书”对应的“描述文件”。(描述文件是.mobileprovision格式的文件)

    个性化保存证书设置:


    image.png

    共享证书

    如果你不想给Apple ID给别人,又想让别人为你开发软件并上传到你的app store上,那么你只要做如下的操作:

    打开钥匙串(不知道如何找看前面),如下图所示:

    image.png image.png image.png

    输入密码,这个密码需要告诉对方,因为对方在安装这个文件时需要这个密码,有人说只能导出开发证书的.p12文件,其实开发证书的p12文件也时可以导出的,操作步骤时一样的。

    到这里恭喜你已经全部成功了,还差最后一步,那就是你需要提供那些东西给对方,需要提供的东西如下:

    1,App ID
    2, 导出的这两个p12文件(包含密码)
    3,两个profile 文件(profile 文件里面包含对方的测试设备的UDID,不然对方没法在真机上进行测试)。

    相关文章

      网友评论

        本文标题:搞懂iOS证书一篇就够

        本文链接:https://www.haomeiwen.com/subject/xffkyrtx.html