吾孙三删吾评 發表於 2022-9-6 14:33:00

iOS 生成证书、描述文件、打包上架Appstore详细流程

<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="94ldo-0-0">&nbsp;</div>
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="23am4-0-0"><span data-offset-key="23am4-0-0">简介</span></div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="6856b-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="6856b-0-0"><span data-offset-key="6856b-0-0">我打算将生成证书,描述文件、上架App的步骤一步一步写下来,于是就有了这篇文章</span></div>
</div>
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="el7i7-0-0"><span data-offset-key="el7i7-0-0">编译环境</span></div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="9rph0-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="9rph0-0-0"><span data-offset-key="9rph0-0-0">系统版本:macOS Sierra 10.12.6</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="ecpah-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="ecpah-0-0"><span data-offset-key="ecpah-0-0">Xcode</span><span data-offset-key="ecpah-1-0">: v9.2(9C40b)</span></div>
</div>
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="cu0vv-0-0"><span data-offset-key="cu0vv-0-0">1.开发者账号</span></div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="b1p09-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="b1p09-0-0"><span data-offset-key="b1p09-0-0">苹果官方开发者网站</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="a7f39-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="a7f39-0-0"><span data-offset-key="a7f39-0-0">开发者账号分为四类:</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="1dhk-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="1dhk-0-0"><span data-offset-key="1dhk-0-0">1 个人开发者账号 Individual</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="2tdbh-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="2tdbh-0-0"><span data-offset-key="2tdbh-0-0">个人的是比较好申请的,相比于公司开发者账号,不需要 申请 <span data-offset-key="2tdbh-0-1">邓白氏编码<span data-offset-key="2tdbh-0-2"> 不需要公司的个人信息,填写的是一些个人的资料即可,审核周期短。完全是以个人身份去发布App。它的费用是 $99.</span></span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="e9okh-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="e9okh-0-0"><span data-offset-key="e9okh-0-0">申请入口</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="c9pqe-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="c9pqe-0-0"><span data-offset-key="c9pqe-0-0">费用 :$99</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="65js0-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="65js0-0-0"><span data-offset-key="65js0-0-0">Devices: 100台</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="bl5kc-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="bl5kc-0-0"><span data-offset-key="bl5kc-0-0">协作人数 : 1人</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="d5li0-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="d5li0-0-0"><span data-offset-key="d5li0-0-0">能否上架AppStore: 能</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="e6skf-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="e6skf-0-0"><span data-offset-key="e6skf-0-0">2 公司开发者账号 Company</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="cu3bb-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="cu3bb-0-0"><span data-offset-key="cu3bb-0-0">公司的开发者账号申请就比较麻烦,需要申请 <span data-offset-key="cu3bb-0-1">邓白氏编码<span data-offset-key="cu3bb-0-2">,这里可能需要1个月的时间,第三方机构才会把白皮书批下来。然后是填写公司的信息,税务方面的资料。审核周期大概1个月,费用 $99</span></span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="9pcpd-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="9pcpd-0-0"><span data-offset-key="9pcpd-0-0">申请入口</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="69vdg-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="69vdg-0-0"><span data-offset-key="69vdg-0-0">3 企业级开发者账号 Enterprise</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="kker-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="kker-0-0"><span data-offset-key="kker-0-0">苹果设计这个类似的开发者账号,是让企业开发让内部员工使用的App,这种类似的App是不允许上架AppStore的。相对于公司开发者账号,他没有设备数限制,可以无限量的绑定设备。当然,它的费用也更加高,费用 $299。</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="9027l-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="9027l-0-0"><span data-offset-key="9027l-0-0">申请入口</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="8trra-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="8trra-0-0"><span data-offset-key="8trra-0-0">4 高校、教育机构 开发者账号 University</span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="7is1s-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="7is1s-0-0"><span data-offset-key="7is1s-0-0">这类证书是免费的,具体申请流程应该跟个人大同小异。其实苹果公司一直是在拉拢高校,苹果设备针对高校都是有一定折扣的,有专门的高校计划</span></div>
</div>
<div class="TableToolbar-container" data-size="normal">
<div>
<table class="Table FocusPlugin--unfocused" data-draft-node="block" data-draft-type="table" data-size="normal" data-row-style="normal">
<tbody>
<tr class="Table-row"><th class="Table-data Table-header">&nbsp;</th><th class="Table-data Table-header">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">个人开发者账号</div>
</div>
</th><th class="Table-data Table-header">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">公司开发者账号</div>
</div>
</th><th class="Table-data Table-header">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">企业级开发者账号</div>
</div>
</th></tr>
<tr class="Table-row">
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">费用</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">$99</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">$99</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">$299</div>
</div>
</td>
</tr>
<tr class="Table-row">
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">绑定设备数量</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">100台</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">100台</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">不做限制</div>
</div>
</td>
</tr>
<tr class="Table-row">
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">协作人数</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">仅限一人</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">不做限制</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">不做限制</div>
</div>
</td>
</tr>
<tr class="Table-row">
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">能否上架AppStore</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">可以</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">可以</div>
</div>
</td>
<td class="Table-data">
<div class="Table-dataInputContainer">
<div class="Table-dataInput">不允许</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="ch7fe-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="ch7fe-0-0"><span data-offset-key="ch7fe-0-0"><span data-text="true">苹果官方介绍各种证书,以及比较</span></span></div>
</div>
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="f94q5-0-0"><span data-offset-key="f94q5-0-0"><span data-text="true">2.证书以及描述文件</span></span></div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="rgbk-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="rgbk-0-0"><span data-offset-key="rgbk-0-0"><span data-text="true">1 申请开发者账号</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="3g0a3-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="3g0a3-0-0"><span data-offset-key="3g0a3-0-0"><span data-text="true">iOS开发之苹果企业开发者账号申请流程</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="buh29-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="buh29-0-0"><span data-offset-key="buh29-0-0"><span data-text="true">2 生成证书</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="bpgdc-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="bpgdc-0-0"><span data-offset-key="bpgdc-0-0"><span data-text="true">(1)首先登录账号</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="c12tj-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="c12tj-0-0"><span data-offset-key="c12tj-0-0"><span data-text="true">(2)选择 Certificates,IDs&amp;Profiles</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="1kcs-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="1kcs-0-0"><span data-offset-key="1kcs-0-0"><span data-text="true">进入之后:</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="encc2-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="encc2-0-0"><span data-offset-key="encc2-0-0"><span data-text="true">(3)先生成Development调试证书 在Certificates 中选择 Development</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="den12-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="den12-0-0"><span data-offset-key="den12-0-0"><span data-text="true">在底部选择 Continue 进入下一个界面</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="9a235-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="9a235-0-0"><span data-offset-key="9a235-0-0"><span data-text="true">这里需要从Mac电脑生成一个证书签名请求</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="apmlh-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="apmlh-0-0"><span data-offset-key="apmlh-0-0"><span data-text="true">首先我们打开Mac的钥匙串界面</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="f32k1-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="f32k1-0-0"><span data-offset-key="f32k1-0-0"><span data-text="true">在 钥匙串访问<span data-offset-key="f32k1-0-1"><span data-text="true"> <span data-offset-key="f32k1-0-2"><span data-text="true">偏好设置中选择证书助理 中选择 从证书颁发机构请求证书</span></span></span></span></span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="4k56-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="4k56-0-0"><span data-offset-key="4k56-0-0"><span data-text="true">填写资料,保存到磁盘</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="4a44b-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="4a44b-0-0"><span data-offset-key="4a44b-0-0"><span data-text="true">将证书存储到桌面</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="7t97a-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="7t97a-0-0"><span data-offset-key="7t97a-0-0"><span data-text="true">证书长这个样子</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="5fir6-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="5fir6-0-0"><span data-offset-key="5fir6-0-0"><span data-text="true">这样,我们就得到我们想要的证书请求。在前一个界面选择刚才生成的证书请求</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="6gla8-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="6gla8-0-0"><span data-offset-key="6gla8-0-0"><span data-text="true">选择Continue</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="c97lh-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="c97lh-0-0"><span data-offset-key="c97lh-0-0"><span data-text="true">选择 Download 保存到本地</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="4k1t1-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="4k1t1-0-0"><span data-offset-key="4k1t1-0-0"><span data-text="true">到这里 <span data-offset-key="4k1t1-0-1"><span data-text="true">调试证书<span data-offset-key="4k1t1-0-2"><span data-text="true">生成完毕</span></span></span></span></span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="dpf3k-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="dpf3k-0-0"><span data-offset-key="dpf3k-0-0"><span data-text="true">注意 这个证书请求时通用的,我们生成发布证书,推送证书时,都是使用这个证书请求。</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="2qn1t-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="2qn1t-0-0"><span data-offset-key="2qn1t-0-0"><span data-text="true">发布证书</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="f2a7s-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="f2a7s-0-0"><span data-offset-key="f2a7s-0-0"><span data-text="true">发布证书只是这里勾选不一样</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="85t22-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="85t22-0-0"><span data-offset-key="85t22-0-0"><span data-text="true">3.Identifiers</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="dtqhj-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="dtqhj-0-0"><span data-offset-key="dtqhj-0-0"><span data-text="true">Identifiers 就是告诉证书,你是哪个项目。</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="8nnnn-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="8nnnn-0-0"><span data-offset-key="8nnnn-0-0"><span data-text="true">点击添加AppIDs</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="8hkrv-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="8hkrv-0-0"><span data-offset-key="8hkrv-0-0"><span data-text="true">点击进入</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="f8jbj-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="f8jbj-0-0"><span data-offset-key="f8jbj-0-0"><span data-text="true">填写Boundle ID</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="6q2bu-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="6q2bu-0-0"><span data-offset-key="6q2bu-0-0"><span data-text="true">勾选App 服务</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="7b2s5-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="7b2s5-0-0"><span data-offset-key="7b2s5-0-0"><span data-text="true">选择Continue,对刚才填写的资料,这里都可以看到</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="1flr6-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="1flr6-0-0"><span data-offset-key="1flr6-0-0"><span data-text="true">最后,需要在底部 选择 Register 注册。</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="6kiig-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="6kiig-0-0"><span data-offset-key="6kiig-0-0"><span data-text="true">看到这里,已经注册完成。</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="e33r7-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="e33r7-0-0"><span data-offset-key="e33r7-0-0"><span data-text="true">4. Devices 绑定测试设备</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="58maf-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="58maf-0-0"><span data-offset-key="58maf-0-0"><span data-text="true">点击添加测试设备</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="6qmn-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="6qmn-0-0"><span data-offset-key="6qmn-0-0"><span data-text="true">填写设备UDID</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="c1kf3-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="c1kf3-0-0"><span data-offset-key="c1kf3-0-0"><span data-text="true">填写完毕 选择Contiune</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="7lm1n-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="7lm1n-0-0"><span data-offset-key="7lm1n-0-0"><span data-text="true">选择 Register 注册即可</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="dodbc-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="dodbc-0-0"><span data-offset-key="dodbc-0-0"><span data-text="true">到这里,添加Devices 完成</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="5g0kt-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="5g0kt-0-0"><span data-offset-key="5g0kt-0-0"><span data-text="true">5. Provisioning Profiles 描述文件</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="tnkv-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="tnkv-0-0"><span data-offset-key="tnkv-0-0"><span data-text="true">通俗的来说,上文我们生成的证书就是告诉苹果我们是哪台电脑生成的,AppIDs 就是告诉苹果我们哪个项目需要他,最终结合二者产生一个描述文件</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="4adl2-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="4adl2-0-0"><span data-offset-key="4adl2-0-0"><span data-text="true">点击添加</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="fdcoo-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="fdcoo-0-0"><span data-offset-key="fdcoo-0-0"><span data-text="true">选择绑定的AppID,Contiune继续</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="6jri-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="6jri-0-0"><span data-offset-key="6jri-0-0"><span data-text="true">选择绑定的开发者证书, Contiune继续</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="47pdp-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="47pdp-0-0"><span data-offset-key="47pdp-0-0"><span data-text="true">选择绑定的测试设备,Contiune继续 </span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="a3vh1-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="a3vh1-0-0"><span data-offset-key="a3vh1-0-0"><span data-text="true">生成的描述文件信息,需要你对他进行命名 ,Contiune继续 </span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="ad9vc-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="ad9vc-0-0"><span data-offset-key="ad9vc-0-0"><span data-text="true">到这里就生成完毕了,点击Download 跟刚才的证书保存在一起</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="b3ssf-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="b3ssf-0-0"><span data-offset-key="b3ssf-0-0"><span data-text="true">生成完毕,可以在这里体现出来</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="cpqa5-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="cpqa5-0-0"><span data-offset-key="cpqa5-0-0"><span data-text="true">发布描述文件 以及AdHoc模式都是这样生成</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="a5pt9-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="a5pt9-0-0"><span data-offset-key="a5pt9-0-0"><span data-text="true">多人开发时,我们需要将证书以及描述文件共享出来,上面提到,证书是跟电脑绑定在一起的,这时,我们可以到处.p12 文件,这样,就可以实现多人协同开发</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="8n38n-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="8n38n-0-0"><span data-offset-key="8n38n-0-0"><span data-text="true">将保存的证书,描述文件,双击安装。</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="ddvh1-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="ddvh1-0-0"><span data-offset-key="ddvh1-0-0"><span data-text="true">打开<span data-offset-key="ddvh1-0-1"><span data-text="true">钥匙串访问<span data-offset-key="ddvh1-0-2"><span data-text="true">,选择 <span data-offset-key="ddvh1-0-3"><span data-text="true">我的证书<span data-offset-key="ddvh1-0-4"><span data-text="true">,这里我们可以看到刚才安装的证书,</span></span></span></span></span></span></span></span></span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="eaf7l-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="eaf7l-0-0"><span data-offset-key="eaf7l-0-0"><span data-text="true">选择你需要共享的证书,双击,然后选择<span data-offset-key="eaf7l-0-1"><span data-text="true">导出</span></span></span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="5d7t0-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="5d7t0-0-0"><span data-offset-key="5d7t0-0-0"><span data-text="true">制作p12证书</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="6kgt7-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="6kgt7-0-0"><span data-offset-key="6kgt7-0-0"><span data-text="true">p12 证书制作</span></span></div>
</div>
<ol class="public-DraftStyleDefault-ol" data-offset-key="5b7t8-0-0">
<li class="Editable-styled public-DraftStyleDefault-orderedListItem public-DraftStyleDefault-reset public-DraftStyleDefault-depth0 public-DraftStyleDefault-listLTR" data-block="true" data-editor="6t552" data-offset-key="5b7t8-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="5b7t8-0-0"><span data-offset-key="5b7t8-0-0"><span data-text="true">拥有一个开发账号和PC</span></span></div>
</li>
<li class="Editable-styled public-DraftStyleDefault-orderedListItem public-DraftStyleDefault-depth0 public-DraftStyleDefault-listLTR" data-block="true" data-editor="6t552" data-offset-key="b702p-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="b702p-0-0"><span data-offset-key="b702p-0-0"><span data-text="true">借助辅助工具appuploader</span></span></div>
</li>
</ol>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="sceb-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="sceb-0-0"><span data-offset-key="sceb-0-0"><span data-text="true">下载链接:</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="2alfh-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="2alfh-0-0"><span data-offset-key="2alfh-0-0"><span data-text="true">下载证书2:http://www.applicationloader.net/</span></span></div>
</div>
<div class="Image-captionContainer" data-size="normal">
<div class="Image-resizerContainer css-ym3v7r" data-size="normal">
<div class="ImageDelete-Container css-xi606m">
<div class="ImageDelete-Wrapper css-1gomreu"><img class="Image FocusPlugin--unfocused Image--isBlock lazyload" data-size="normal" data-rawwidth="1888" data-rawheight="717" data-watermark="watermark" data-original-src="https://pica.zhimg.com/v2-b42cc1339c3d7864df7c617f53ccc1a4.png" data-watermark-src="https://picx.zhimg.com/v2-235644d716c2375be0d3afc9c28cdc8c.png" data-src="https://picx.zhimg.com/80/v2-b42cc1339c3d7864df7c617f53ccc1a4_720w.png"></div>
</div>
</div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="f41oi-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="f41oi-0-0"><span data-offset-key="f41oi-0-0"><span data-text="true">这里需要你填写密码,也可以不填写,直接保存。</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="9lr8v-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="9lr8v-0-0"><span data-offset-key="9lr8v-0-0"><span data-text="true">这里讲的是开发证书,生成.p12信息交换文件,发布证书,推送证书都是一个步骤</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="73v8k-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="73v8k-0-0"><span data-offset-key="73v8k-0-0"><span data-text="true">描述文件是生成不了.p12 文件的</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="6115b-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="6115b-0-0"><span data-offset-key="6115b-0-0"><span data-text="true">我们生成描述文件,安装好之后,就可以在工程中选择了</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="24dfq-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="24dfq-0-0"><span data-offset-key="24dfq-0-0"><span data-text="true">现在,你可以开始真机调试了,并且发布证书也安装完毕了,到你需要打包上架时,这里都不需要更改</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="caf4v-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="caf4v-0-0"><span data-offset-key="caf4v-0-0"><span data-text="true">当然,你也可以在使用 Automatically manage signing,这个我在 2016年 使用Xcode 8 时,打包上架不成功</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="9bhsg-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="9bhsg-0-0"><span data-offset-key="9bhsg-0-0"><span data-text="true">删除描述文件</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="41bsg-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="41bsg-0-0"><span data-offset-key="41bsg-0-0"><span data-text="true">当我们更新了描述文件,比如添加了测试设备,增加了App 服务时,需要重新安装描述文件,但是发现一直不成功。我们可以删除旧的描述文件,再安装新的描述文件</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="1ealh-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="1ealh-0-0"><span data-offset-key="1ealh-0-0"><span data-text="true">~/Library/MobileDevice/Provisioning Profiles </span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="2j998-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="2j998-0-0"><span data-offset-key="2j998-0-0"><span data-text="true">我们进入这个目录,就可以看到整个Xcode中安装的描述文件,选择你需要删除的即可</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="bmjgn-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="bmjgn-0-0"><span data-offset-key="bmjgn-0-0"><span data-text="true">在2014年以前,真机也会出现这种情况,那时候需要安装一个软件,删除真机内的描述文件才可以。时代在进步,现在已经不会出现这种情况了,我也忘记了</span></span></div>
</div>
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="f35vc-0-0"><span data-offset-key="f35vc-0-0"><span data-text="true">3.Xcode</span></span></div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="do1af-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="do1af-0-0"><span data-offset-key="do1af-0-0"><span data-text="true">官方唯一指定开发IDE.</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="1nc4i-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="1nc4i-0-0"><span data-offset-key="1nc4i-0-0"><span data-text="true">上架时注意:</span></span></div>
</div>
<ol class="public-DraftStyleDefault-ol" data-offset-key="75n9t-0-0">
<li class="Editable-styled public-DraftStyleDefault-orderedListItem public-DraftStyleDefault-reset public-DraftStyleDefault-depth0 public-DraftStyleDefault-listLTR" data-block="true" data-editor="6t552" data-offset-key="75n9t-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="75n9t-0-0"><span data-offset-key="75n9t-0-0"><span data-text="true">Xcode 不能为bate版本</span></span></div>
</li>
<li class="Editable-styled public-DraftStyleDefault-orderedListItem public-DraftStyleDefault-depth0 public-DraftStyleDefault-listLTR" data-block="true" data-editor="6t552" data-offset-key="b6r9j-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="b6r9j-0-0"><span data-offset-key="b6r9j-0-0"><span data-text="true">MacOSX 不能为bate版本</span></span></div>
</li>
</ol>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="5v5r9-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="5v5r9-0-0"><span data-offset-key="5v5r9-0-0"><span data-text="true">在 2015年,Xcode爆出一个 <span data-offset-key="5v5r9-0-1"><span data-text="true">XcodeGhost<span data-offset-key="5v5r9-0-2"><span data-text="true"> 事件 <span data-offset-key="5v5r9-1-0"><span data-text="true">详情可见</span></span></span></span></span></span></span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="dtc2m-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="dtc2m-0-0"><span data-offset-key="dtc2m-0-0"><span data-text="true">我们必须确保Xcode是官方版本,最好是在官网下载或者AppStore 下载,如果使用了被植入了恶意代码的Xcode,用户使用了你上架的App,会直接作为肉鸡。</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="4g1dn-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="4g1dn-0-0"><span data-offset-key="4g1dn-0-0"><span data-text="true">检查方法:</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="8qu1-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="8qu1-0-0"><span data-offset-key="8qu1-0-0"><span data-text="true">/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="dqd1b-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="dqd1b-0-0"><span data-offset-key="dqd1b-0-0"><span data-text="true">正常的SDKS 目录下 是没有Frameworks/CoreServices.framework/ 这一级目录的</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="cg61k-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="cg61k-0-0"><span data-offset-key="cg61k-0-0"><span data-text="true">而被恶意感染的Xcode ,它的目录是这样的:</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="8pjfj-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="8pjfj-0-0"><span data-offset-key="8pjfj-0-0"><span data-text="true">Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/Library/Frameworks/CoreServices.framework/</span></span></div>
</div>
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="duvkp-0-0"><span data-offset-key="duvkp-0-0"><span data-text="true">4. 在iTunes Connect创建 App</span></span></div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="19i7g-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="19i7g-0-0"><span data-offset-key="19i7g-0-0"><span data-text="true">(1)进入开发者网站,点击进入</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="8fgi4-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="8fgi4-0-0"><span data-offset-key="8fgi4-0-0"><span data-text="true">(2)点击+ 号,新建App</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="9oiv2-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="9oiv2-0-0"><span data-offset-key="9oiv2-0-0"><span data-text="true">(3)填写App信息</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="99f4p-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="99f4p-0-0"><span data-offset-key="99f4p-0-0"><span data-text="true">(4)AppStore中显示的信息</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="15nem-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="15nem-0-0"><span data-offset-key="15nem-0-0"><span data-text="true">点击进入分级,需要你根据App自身情况来勾选,理论上17+之后的是上不了架的</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="a67va-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="a67va-0-0"><span data-offset-key="a67va-0-0"><span data-text="true">(5)在 iOS App中填入关键的信息,在这里你需要上传App 屏幕快照,版本内容,技术支持网址,宣传文本,描述文件,版权所属人,联系人。还需要你打包上传的二进制文件等等</span></span></div>
</div>
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="3k2vr-0-0"><span data-offset-key="3k2vr-0-0"><span data-text="true">5. 打包、上架项目</span></span></div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="djnd-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="djnd-0-0"><span data-offset-key="djnd-0-0"><span data-text="true">在项目中,选择 Product 中选择 Archive ,同时工程需要选择 Generic iOS Device</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="nkj8-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="nkj8-0-0"><span data-offset-key="nkj8-0-0"><span data-text="true">在编译的时候比较耗时。</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="a25v9-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="a25v9-0-0"><span data-offset-key="a25v9-0-0"><span data-text="true">这时编译成功,这时,你可以选择上传App Store。</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="c7tns-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="c7tns-0-0"><span data-offset-key="c7tns-0-0"><span data-text="true">选择 上传,这里我们最好都勾选上</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="9phub-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="9phub-0-0"><span data-offset-key="9phub-0-0"><span data-text="true">在这里,我们需要选择<span data-offset-key="9phub-0-1"><span data-text="true">发布<span data-offset-key="9phub-0-2"><span data-text="true">描述文件</span></span></span></span></span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="5dae2-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="5dae2-0-0"><span data-offset-key="5dae2-0-0"><span data-text="true">这里包含之前勾选的一些信息,点击Upload</span></span></div>
</div>
<div class="Editable-unstyled" data-block="true" data-editor="6t552" data-offset-key="enm2i-0-0">
<div class="public-DraftStyleDefault-block public-DraftStyleDefault-ltr" data-offset-key="enm2i-0-0"><span data-offset-key="enm2i-0-0"><span data-text="true">上传成功后,我们进入 iTunes Connect 选择 iOS App 中,构建版本中选择刚才上传的二进制文件。 通常,我们上传成功之后都是需要等待20分钟左右,苹果需要处理这个二进制文件。</span></span></div>
</div><br><br>
来源:https://www.cnblogs.com/gddg/p/16661700.html
頁: [1]
查看完整版本: iOS 生成证书、描述文件、打包上架Appstore详细流程