zoukankan      html  css  js  c++  java
  • iOS证书和描述文件

    iOS有两种证书和描述文件:

    证书类型使用场景
    开发(Development)证书和描述文件 用于开发测试,在HBuilder中打包后可在真机环境通过Safari调试
    发布(Distribution)证书和描述文件 用于提交Appstore,在HBuilder中打包后可使用Application Loader提交到Appstore审核发布

    准备环境

      • 必需要有苹果开发者账号,并且加入了“iOS Developer Program”
      • Mac OS 10.9以上系统(如果已经申请p12证书则不需要)

    登录iOS Dev Center 

    打开网站iOS Dev Center
    使用苹果开发者账号登录iOS Dev Center:

    登录成功后在页面右侧选择“Certificates, Identifiers & Profiles”:

    在“Certificates, Identifiers & Profiles”页面的“iOS Apps”栏中任选一项,如“Certificates”:

    打开“iOS Certificates”页面,可以看到所有已经申请的证书及描述文件:

    申请苹果App ID

    (如果已经申请,可跳过此节)
    在“iOS Certificates”页面“Identifiers"下选择“App IDs",可查看到已申请的所有App ID,点击右上角的加号可创建新“App ID”:

    打开“Register iOS App ID”页面,在“App ID Description”栏下的“Name”项中输入名称(如“HBuilderApp”):

    在“Explicit App ID”栏下的“Bundle ID”项中输入App ID(使用反向域名格式字符串,如“io.dcloud.HBuilderApp”):
    注意:HBuilder中App云端打包界面的AppID栏需要输入此值

    在“App Services”栏下选择应用要使用到的服务(如需要使用到消息推送功能,则选择“Push Notifications”):

    设置完成后选择“Continue”,弹出确认页面:

    确认后选择“Submit”提交,再次确认就可以在“App IDs"页面看到刚创建的App ID:

    生成证书请求文件

    不管是申请开发(Development)证书还是发布(Distribution)证书,都需要使用证书请求(.certSigningRequest)文件,证书请求文件需在Mac OS上使用“Keychain Access”工具生成。
    在“Spltlight Search”中搜索“Keychain”并打开“Keychain Access”工具:

    打开菜单“Keychain Access”->“Certificate Assistant”,选择“Request a Certificate From a Certificate Authority...”:

    打开创建请求证书页面,在页面中输入用户邮件地址(User Email Address)、证书名称(Common Name),请求类型(Request is)选择保存到磁盘(Saved to disk):

    点击“Continue”后弹出保存路径:

    点击“Save”后保存证书请求文件,成功提示:

    保存文件名称为“CertificateSigningRequest.certSigningRequest”,后面申请开发(Development)证书和发布(Production)证书时用到。

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

    开发(Development)证书用于测试环境下使用,可以直接安装到手机上(不用提交到Appstore),但一个描述文件最多只能绑定100台设备(因此通过这种证书正式发布应用是行不通的)。

    申请开发(Development)证书

    在“Certificates, Identifiers & Profiles”页面“Certificates"下选择“Development",可查看到已申请的所有开发(Development)证书,点击右上角的加号可创建新证书:

    打开“Add iOS Certificate”页面,在“Development”栏下选中“iOS App Development”:

    在页面底部选择“Continue”:

    打开确认证书请求页面,点击“Continue”继续:

    打开证书生成页面,点击“Choose File...”选择“生成证书请求文件”章节生成的“CertificateSigningRequest.certSigningRequest”文件,点击“Generate”生成cer证书成功:

    生成证书成功后打开证书下载页面,选择“Download”下载保存证书(ios_development.cer):

    双击保存到本地的ios_development.cer文件导入到“Keychain Access”:

    导入成功后,可以在证书列表中显示:

    选中导入的证书,右键选择“Export "Developer" ...”:

    打开证书保存页面,输入文件名、选择路径后点击“Save”:

    打开设置证书密码页面,输入密码及确认密码后点击“OK”:

    打开访问“Keychain Access”密码页面,输入Mac OS管理员密码,点击“Allow”,保存开发(Development)证书(如“HBuilderCert.p12”)。

    添加调试设备

    开发描述文件必须绑定设备,所以在申请开发描述文件之前,先添加调试的设备。
    (如果已经添加设备,可跳过此节)
    在“Certificates, Identifiers & Profiles”页面“Devices”下选择“All",可查看到已添加的所有设备信息,点击右上角的加号可添加新设备:

    打开“Registering a New Device or Multiple Devices”页面,输入设备名称和UDID:


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

    输入完成后,点击“Continue”继续,确认输入信息:

    点击“Register”,完成添加。

    申请开发(Development)描述文件

    在“Certificates, Identifiers & Profiles”页面“Provisioning Profiles”下选择“Development",可查看到已申请的所有开发(Development)描述文件,点击右上角的加号可创建新描述文件:

    打开“Add iOS Provisioning Profile”页面,在“Development”栏下选中“iOS App Development”:

    点击“Continue”按钮,打开“App ID”选择页面,选择要使用的“App ID”(如之前创建的“io.dcloud.HBuildApp”),点击“Continue”:

    打开“Select certificates”页面,选择前面创建的开发证书:

    点击“Continue”,打开选择调试设备页面,选择用于调试安装的设备(最多100太设备):

    点击“Continue”,输入描述文件的名称(如“HBuilderProfile”):

    点击“Generage”,生成描述文件成功:

    点击“Download”下载保存开发描述文件(如HBuilderProfile.mobileprovision)。

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

    发布(Production)证书用于正式发布环境下使用,用于提交到Appstore审核发布。

    申请发布(Production)证书

    在“Certificates, Identifiers & Profiles”页面“Certificates"Production",可查看到已申请的所有发布(Production)证书,点击右上角的加号可创建新证书:

    打开“Add iOS Certificate”页面,在“Production”栏下选中“App Store and Ad Hoc”:

    在页面底部选择“Continue”:

    打开确认证书请求页面,点击“Continue”继续:

    打开证书生成页面,先点击“Choose File...”选择“生成证书请求文件”章节生成的“CertificateSigningRequest.certSigningRequest”文件,再点击“Generate”生成cer证书:

    生成证书成功后打开证书下载页面,选择“Download”下载保存证书(ios_production.cer):

    双击保存到本地的ios_production.cer文件导入到“Keychain Access”:

    导入成功后,可以在证书列表中显示:

    选中导入的证书,右键选择“Export "Developer" ...”:

    打开证书保存页面,输入文件名、选择路径后点击“Save”:

    打开设置证书密码页面,输入密码及确认密码后点击“OK”:

    打开访问“Keychain Access”密码页面,输入Mac OS管理员密码,点击“Allow”,保存开发(Production)证书(如“HBuilderCert.p12”)。

    申请发布(Distribution)描述文件

    在“Certificates, Identifiers & Profiles”页面“Provisioning Profiles”下选择“Distribution",可查看到已申请的所有发布(Distribution)描述文件,点击右上角的加号可创建新描述文件:

    打开“Add iOS Provisioning Profile”页面,在“Development”栏下选中“iOS App Development”:

    点击“Continue”按钮,打开“App ID”选择页面,选择要使用的“App ID”(如之前创建的“io.dcloud.HBuildApp”),点击“Continue”:

    打开“Select certificates”页面,选择前面创建的发布证书:

    点击“Continue”,输入描述文件的名称(如“HBuilderProfileDistribution”):

    点击“Generage”,生成描述文件成功:

    点击“Download”下载保存开发描述文件(如HBuilderProfileDistribution.mobileprovision)。

    为什么要导出.p12文件

    当我们用大于三个mac设备开发应用时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中应该只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加。)

    如图:

    这时候,再点击“+”时,就会发现点击不了开发和发布证书,也就是添加不了开发证书和发布证书了:

    有两个解决不能添加证书的办法

    第一种方法——“revoke”(不推荐):

    将以前的证书“revoke”掉,如图:

    然后重新生成一个新的证书。

    这种方法是可以的,但是会造成相应的Provisioning Profiles失效,这个可大可小。如果只有你一个人则问题不大,如果是一个团队大家都在用,你把这个证书删除了,会导致别人的描述文件失效,这意味着别人不能发布应用了(还可以开发),这可是大问题,所以不提倡这种做法。

    第二种方法——“.p12”(推荐):

    我们的每一个证书都可以生成一个.p12文件,这个文件是一个加密的文件,只要知道其密码,就可以供给所有的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书,就能使用。

    注意:一般.p12文件是给与别人使用的,本机必须已经有一个带秘钥的证书才可以生成.p12文件,如图:

    在别人的电脑上要成功安装,须具备两个文件:

    • 该证书导出的“.p12”文件。

    • 苹果开发者中的与“证书”对应的“描述文件”

    如果需要用于开发的,那么需要这两个文件:

    .p12文件本身就是一个加密的证书,所以用这两个文件就可以让其他mac设备使用了:

    拿到这两个文件后,依次双击“证书”,“.p12“文件(需要输入密码,密码就是当时生成.p12时设定的密码,),作用是加入钥匙串中,使我们的电脑具备开发的证明,”描述文件“(作用是置于xcode中,让xcode知道我们开发的合法性),添加完后就可以使用了。

  • 相关阅读:
    py4 程序流程控制
    [Selenium+Java] Handling AJAX Call in Selenium Webdriver
    [Selenium+Java] SSL Certificate Error Handling in Selenium
    [Selenium+Java] Desired Capabilities in Selenium
    [Selenium+Java] How to use AutoIT with Selenium
    [Selenium+Java] https://www.guru99.com/using-robot-api-selenium.html
    [Selenium+Java] Selenium with HTMLUnit Driver & PhantomJS
    [Selenium+Java] Log4j with Selenium Tutorial
    [Selenium+Java] Parallel Execution & Session Handling in Selenium
    [Selenium+Java] How to Take Screenshot in Selenium WebDriver
  • 原文地址:https://www.cnblogs.com/jingxin1992/p/6047100.html
Copyright © 2011-2022 走看看