Unity-极光集成
<p>[TOC]</p>
<h2>版本记录</h2>
<table>
<thead>
<tr>
<th style="text-align: left;">版本号</th>
<th style="text-align: left;">时间</th>
<th style="text-align: left;">修改内容</th>
<th style="text-align: left;">责任人</th>
<th style="text-align: left;">备注</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">V1.6.0</td>
<td style="text-align: left;">2019/01/08</td>
<td style="text-align: left;">Unity 极光相关 相关</td>
<td style="text-align: left;">buck.yu</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<h3>1.0 极光集成</h3>
<h4>参数申请</h4>
<ul>
<li>请在极光的<a href="https://www.jiguang.cn/">后台</a>申请应用。即可获取极光的appkey。 申请方式请联系渠道商务同事。</li>
<li>在极光后台的 应用设置-> 认证设置 -> 一键登录 里面,设置RSA加密公钥。</li>
<li>公钥请填入msConfig.json文件中的 ms_app_public_key 对应的值。(android/ios 不同)</li>
</ul>
<h4>配置极光的key到msConfig.json文件中。</h4>
<ul>
<li>在对应平台(android/iOS)的配置文件msConfig.json中填入极光的appkey。</li>
<li>key为 “jg_app_key”。</li>
</ul>
<h3>1.1 一键登陆</h3>
<p>配置好参数,就可以在微服务后台,控制开启一键登陆功能.</p>
<h3>1.2 Jpush 功能</h3>
<blockquote>
<p>'1.6.0' 开始集成</p>
</blockquote>
<h4>1.2.1 获取注册id</h4>
<p>调用示例</p>
<p>```c#
using iDreamsky.MSLD;</p>
<p>MSLDPushManager.RegistrationID((MSLDErrorCode code, string msg, string data) =>
{
if (code == MSLDErrorCode.Success)
{
MSLDInfoWindow.Info("获取注册ID:" + data);
}
else
{
MSLDInfoWindow.Info("获取注册ID失败! code = " + code + " msg = " + msg);
}
});</p>
<pre><code>
#### 1.2.2 设置别名
调用示例
```c#
using iDreamsky.MSLD;
string alias = "SetAlias";
MSLDPushManager.SetAlias(alias, (MSLDErrorCode code, string msg) =>
{
if (code == MSLDErrorCode.Success)
{
MSLDInfoWindow.Info("设置别名成功");
}
else
{
MSLDInfoWindow.Info("设置别名失败! code = " + code + " msg = " + msg);
}
});
</code></pre>
<h4>1.2.3 设置app 小红点数量(ios有效)</h4>
<p>调用示例</p>
<p>```c#
using iDreamsky.MSLD;</p>
<p>int num = 0; // 0 相当清空红点数量
MSLDPushManager.SetBadgeNumber(num);</p>
<pre><code>
#### 1.2.4 自定义消息
调用示例
自定义消息,会通过全局回调的方式,通知到游戏。
> 全局回调接入[查看](https://www.showdoc.cc/mssdk?page_id=2644306103942782#2.3.3.1%20%E5%88%9D%E5%A7%8B%E5%8C%96SDK) (2.3.3.2 设置全局回调监听)
```c#
using iDreamsky.MSLD;
MSLDSDK.SetEventCallBack((MSLDSDK.Event eventID, object eventObj) => {
MSLDInfoWindow.Info("收到SDK全局事件回调:" + eventID);
switch (eventID)
{
...
case MSLDSDK.Event.NotificationReceived:
MSLDInfoWindow.Info("push自定义通知:" + eventObj == null ? "null" : ((MSLDCustomMessage)eventObj).desc());
break;
...
}
</code></pre>