【教程】制作 iOS 推送证书
<p data-pm-slice="0 0 []"></p><h1> 【教程】制作 iOS 推送证书</h1>
<p>如需向 iOS 设备推送数据,您首先需要在消息推送控制台上配置 iOS 推送证书。iOS 推送证书用于推送通知,本文将介绍消息推送服务支持的证书类型,并引导您制作 iOS 推送证书。</p>
<h2>证书类型</h2>
<p>消息推送服务仅支持 Apple Push Service 类型的证书。有关苹果证书类型及相关介绍,请参见 苹果证书类型。</p>
<p>Apple Push Service 易和 iOS Development 类型的证书混淆。使用 iOS Development 证书会导致消息推送大量失败。下面将介绍如何通过 MAC Key Store 和消息推送控制台区分这两类证书。</p>
<h3> </h3>
<img src="https://static001.geekbang.org/infoq/f4/f449c7f0ce709c4e1d8258c61b64f3e2.png">
<h3> </h3>
<h3>MAC Key Store</h3>
<p>双击已有的 <code>.p12</code> 证书,将证书导入 MAC 钥匙串中,您将看到证书名称等信息:</p>
<p> </p>
<p> </p>
<img src="https://static001.geekbang.org/infoq/e7/e7667e894e7fc5da9235440f2e52854f.png">
<p></p>
<p> </p>
<p>其中:</p>
<ul>
<li>
<p>iPhone Developer:苹果开发证书。消息推送不支持。</p>
</li>
<li>
<p>Apple Push Service:生产环境苹果推送证书。消息推送支持。</p>
</li>
<li>
<p>Apple Development IOS Push Services:开发环境苹果推送证书。消息推送支持。</p>
</li>
</ul>
<h3>消息推送控制台</h3>
<p>在消息推送控制台导入证书后,您将看到以下证书信息:</p>
<p> </p>
<p> </p>
<img src="https://static001.geekbang.org/infoq/b0/b0511ac5135523204e5267db083d9126.png">
<p></p>
<p> </p>
<p> </p>
<p> </p>
<p>如上图所示,<code>subjectDN</code> 属性:</p>
<ul>
<li>
<p>Apple Development IOS Push Services:开发环境苹果推送证书。消息推送支持。</p>
</li>
<li>
<p>Apple Push Service:生产环境苹果推送证书。消息推送支持。</p>
</li>
</ul>
<p> </p>
<p> </p>
<img src="https://static001.geekbang.org/infoq/40/40e2be77d764704dabd80ff6b74e6a9b.png">
<p></p>
<p> </p>
<p> </p>
<p> </p>
<p>如上图所示,<code>subjectDN</code> 属性 <code>iPhone Developer</code> 表明是苹果开发证书,消息推送不支持。</p>
<h2>制作证书</h2>
<h3>创建苹果 App ID</h3>
<ol>
<li>
<p data-number="1">在苹果开发平台,单击左侧导航栏 <strong>App IDs</strong>,然后单击右上角 <strong>+</strong> 按钮。</p>
</li>
<li>
<p data-number="2">填写基础信息。</p>
<p data-number="3"><strong>App ID Description</strong> > <strong>Name</strong></p>
<p data-number="4"><strong>App ID Suffix</strong> > <strong>Bundle ID</strong>: Bundle ID 需要具备唯一性。</p>
</li>
<li>
<p data-number="5">勾选 <strong>Push Notifications</strong> 能力。</p>
</li>
<li>
<p data-number="6">单击 <strong>Continue</strong> 后,单击 <strong>Register</strong> 完成创建。</p>
</li>
</ol>
<h3>使用appuploder制作 .p12文件</h3>
<ol>
<li>
<p data-number="1">进入 appuploader中的证书制作模块。</p>
</li>
<li>
<p data-number="2">创建证书。选择 <strong>新建</strong>> <strong>证书填写</strong> 。。。。</p>
</li>
<li>
<p data-number="3">在打开的 <strong>证书信息</strong> 窗口中,根据实际情况填写邮件地址和常用名称等相关信息。</p>
</li>
<li>
<p data-number="4"><code>.p12</code>文件制作成功。</p>
</li>
</ol>
<h3>创建证书</h3>
<ol>
<li>
<p data-number="1">在苹果 <strong>App IDs</strong> 页面中,选中自己的 iOS App ID,单击 <strong>Edit</strong>。</p>
<p data-number="2"> </p>
</li>
</ol><img src="https://static001.geekbang.org/infoq/ee/eeef2d264e663fb4e7ca577e029aaeab.png"><ol>
<li>
<p data-number="1">单击 <strong>Development SSL Certificate</strong> 或 <strong>Production SSL Certificate</strong> 卡片中的 <strong>Create Certificate</strong>,开始创建开发或生产环境下的证书。</p>
</li>
<li>
<p data-number="2"> </p>
</li>
</ol><img src="https://static001.geekbang.org/infoq/72/7278ef9fd90c0ae9051bc5c1827d618a.png"><ol>
<li>
<p data-number="1">在创建证书时,可以使用appuploder制作证书,创建即可得到.p12证书,无需.cer转换.p12</p>
</li>
</ol>
<p> </p>
<img src="https://static001.geekbang.org/infoq/d7/d7d4d86fd7cee81d835630eecf61f7dc.png">
<p> </p>
<p> </p>
<p> </p>
<ol>
<li>
<p data-number="1">证书创建成功后,您将看到以下页面。单击 <strong>另存为</strong>,您将得到 <code>.p12</code> 文件。</p>
</li>
<li>
<p data-number="2">找到刚刚导入的证书,右键单击,选择 <strong>导出</strong> 功能。导出成功后您将获得 <code>.p12</code> 证书。</p>
</li>
<li>
<p data-number="3">至此您已获得了 <code>.p12</code> 证书,可以前往消息推送控制台的 <strong>设置</strong> > <strong>渠道配置</strong> 页面配置 iOS 推送证书。</p>
</li>
</ol>
<div data-pm-attrs="{"type":"table","data":{"content":"<table id=\"table-p0k-q37-h9l\">\t<tbody>\t\t<tr id=\"tr-9v9-r0w-79l\">\t\t\t<td colspan=\"1\" id=\"td-65z-420-m0q\" rowspan=\"1\">\t\t\t<p id=\"p-g5q-6ti-eg7\">证书类型</p>\t\t\t</td>\t\t\t<td colspan=\"1\" id=\"td-5rc-bot-2vu\" rowspan=\"1\">\t\t\t<p id=\"p-v2a-tqb-3qg\">用途</p>\t\t\t</td>\t\t</tr>\t\t<tr id=\"tr-hfr-lhx-m6g\">\t\t\t<td colspan=\"1\" id=\"td-1o5-qc4-seb\" rowspan=\"1\">\t\t\t<p id=\"p-9br-j0x-jn2\">Apple Push Service</p>\t\t\t</td>\t\t\t<td colspan=\"1\" id=\"td-i55-qg3-zoh\" rowspan=\"1\">\t\t\t<p id=\"p-j4g-1ny-vi8\">生产环境下的推送证书。用于在通知服务和 APNs 之间建立连接,以向 App 发送远程通知。</p>\t\t\t</td>\t\t</tr>\t\t<tr id=\"tr-zfr-axd-ht6\">\t\t\t<td colspan=\"1\" id=\"td-dyb-q8c-62z\" rowspan=\"1\">\t\t\t<p id=\"p-2zg-fsw-rfr\">iOS Development</p>\t\t\t</td>\t\t\t<td colspan=\"1\" id=\"td-6sd-2fy-4gu\" rowspan=\"1\">\t\t\t<p id=\"p-uh8-r72-hvo\">开发证书。用于真机调试和发布测试。</p>\t\t\t</td>\t\t</tr>\t</tbody></table>"}}" data-pm-embed-component=""> </div>
<p></p><br><br>
来源:https://www.cnblogs.com/gddg/p/17896328.html
頁:
[1]