iOS API
<p>[TOC]</p>
<h2>文档记录</h2>
<table>
<thead>
<tr>
<th>编写日期</th>
<th>编写人员</th>
<th>文档版本</th>
<th>修改内容</th>
<th>备注</th>
</tr>
</thead>
<tbody>
<tr>
<td>2019.7.11</td>
<td>mark.zhang</td>
<td>1.0.1</td>
<td>调整文档结构</td>
<td>无</td>
</tr>
<tr>
<td>2019.8.3</td>
<td>jack.deng</td>
<td>1.0.2</td>
<td>删除生命周期函数的说明</td>
<td>无</td>
</tr>
<tr>
<td>2019.8.28</td>
<td>mark.zhang</td>
<td>1.0.3</td>
<td>完善数据模型的定义</td>
<td>无</td>
</tr>
<tr>
<td>2019.11.06</td>
<td>jack.deng</td>
<td>1.1.0</td>
<td>新增带UI的用户协议,隐私政策接口说明</td>
<td>需要更新SDK到1.4.1.2版本</td>
</tr>
<tr>
<td>2019.11.08</td>
<td>jack.deng</td>
<td>1.1.1</td>
<td>新增问卷星新增url参数。</td>
<td>需要更新SDK到1.4.2版本</td>
</tr>
<tr>
<td>2019.11.27</td>
<td>berton.luo</td>
<td>1.1.2</td>
<td>新增极光一键登录接口,</td>
<td>需要更新SDK到1.5.0版本</td>
</tr>
<tr>
<td>2019.12.25</td>
<td>jack.deng</td>
<td>1.5.1</td>
<td>新增客户端传入支付回调地址和用户更新信息的全局通知</td>
<td>需要更新SDK到1.5.1版本</td>
</tr>
<tr>
<td>2020.1.9</td>
<td>jack.deng</td>
<td>1.6.0</td>
<td>新增push相关接口和LBS中获取当前位置接口</td>
<td>无</td>
</tr>
<tr>
<td>2020.1.9</td>
<td>jack.deng</td>
<td>1.7.0</td>
<td>新增兑换码模块</td>
<td>需要更新SDK到1.7.0版本</td>
</tr>
<tr>
<td>2020.2.27</td>
<td>jack.deng</td>
<td>1.8.0</td>
<td>新增好友关系链模块</td>
<td>需要更新SDK到1.8.0版本</td>
</tr>
<tr>
<td>2020.2.28</td>
<td>berton.luo</td>
<td>1.9.0</td>
<td>新增微博分享</td>
<td>需要更新SDK到1.9.0版本</td>
</tr>
<tr>
<td>2020.3.16</td>
<td>jack.deng</td>
<td>1.9.0</td>
<td>新增LBS获取权限接口</td>
<td>需要更新SDK到1.9.0版本</td>
</tr>
<tr>
<td>2020.3.20</td>
<td>berton.luo</td>
<td>1.10.0</td>
<td>新增海外登录接口</td>
<td>需要使用海外版SDK</td>
</tr>
<tr>
<td>2020.3.24</td>
<td>berton.luo</td>
<td>1.10.0</td>
<td>新增Facebook分享接口</td>
<td>需要使用海外版SDK</td>
</tr>
<tr>
<td>2020.3.30</td>
<td>berton.luo</td>
<td>1.9.3</td>
<td>新增OpenInstall接口</td>
<td>需要更新SDK到1.9.3版本</td>
</tr>
<tr>
<td>2020.3.30</td>
<td>berton.luo</td>
<td>1.9.5</td>
<td>新增政策限制接口,修改全局回调事件</td>
<td>需要更新SDK到1.9.5版本</td>
</tr>
</tbody>
</table>
<h2>文档简介</h2>
<p>乐逗 iOS SDK,包括登录、支付和数据统计(DLog)、三方分享等功能。</p>
<p>该文档是 SDK 对外 API,方便开发者接入 SDK,有问题可以 <a href="https://www.showdoc.cc/mssdk?page_id=2615409307929897">联系我们</a>。</p>
<p>初次接入MSSDK,建议大家参考 <a href="https://www.showdoc.cc/mssdk?page_id=2643085941453925">iOS MSSDK 集成向导</a> 文档。</p>
<h2>重要信息</h2>
<p>本文档中涉及到的 <code>错误码</code> 可以参考下面链接的内容。</p>
<ul>
<li>iOS SDK 错误码可以参考 <a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">iOS SDK 错误码</a> 文档</li>
</ul>
<h2>事件回调处理</h2>
<blockquote>
<p>主要用于 SDK 通知接入方一些重要的事件信息,如初始化成功、用户切换帐号成功,登出和产生补单等事件。</p>
</blockquote>
<p><strong>简要描述:</strong></p>
<p>接入方实现监听代理 <code>MSLDDelegate</code>,用于 SDK 和接入方通信,SDK 主动通过该代理通知接入方。</p>
<p><strong>函数原型:</strong></p>
<pre><code class="language-objc">- (void)onMSLDSDKEvent:(NSInteger)eventID msg:(NSString *)msg data:(id)data;</code></pre>
<p><strong>函数参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">eventID</td>
<td style="text-align: left;">MSLDSDKGlobalEvent</td>
<td>事件ID,标识具体事件,详见 MSLDSDKGlobalEvent</td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>提示信息</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>事件对应的数据,可能为空</td>
</tr>
</tbody>
</table>
<p>MSLDSDKGlobalEvent 定义:</p>
<table>
<thead>
<tr>
<th style="text-align: left;">枚举名称</th>
<th style="text-align: left;">事件ID</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;">MSLDSDKSwitch</td>
<td style="text-align: left;">1</td>
<td style="text-align: left;">用户切换帐号</td>
<td style="text-align: left;">切换后的账户对象</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td style="text-align: left;">用户在个人中心选择切换帐号后,选择某个帐号登录、或用户在绑定手机二选一流程中,选择取回原有时,会触发该事件</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKLogOut</td>
<td style="text-align: left;">2</td>
<td style="text-align: left;">退出登录</td>
<td style="text-align: left;">退出登录的账户对象</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td style="text-align: left;">用户在个人中心选择切换帐号时,会先退出当前帐号,由此触发该事件。用户在使用SDK各项功能过程中,token过期时亦会触发该事件</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKRedeliveryOrder</td>
<td style="text-align: left;">3</td>
<td style="text-align: left;">产生补单</td>
<td style="text-align: left;">订单对象</td>
<td style="text-align: left;"><a href="#jump_order">MSLDOrder</a></td>
<td style="text-align: left;">用户在支付时,因某些异常原因导致SDK内部未收到支付成功回调,当该用户下次登录时,触发该事件</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKPolicyMinorsPlayTimeLimit</td>
<td style="text-align: left;">4</td>
<td style="text-align: left;">政策需求-未成年人游戏时间已到上限</td>
<td style="text-align: left;">limitStatus,强限制=@"1",弱限制=@"2"</td>
<td style="text-align: left;">NSDictionary</td>
<td style="text-align: left;">客户端检测到用户(未成年人)已经达到政策规定的游戏时间上限,会触发该事件。</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKPolicyNoAuthPlayTimeLimit</td>
<td style="text-align: left;">5</td>
<td style="text-align: left;">政策需求-未实名账号游戏时间已到上限</td>
<td style="text-align: left;">limitStatus,强限制=@"1",弱限制=@"2"</td>
<td style="text-align: left;">NSDictionary</td>
<td style="text-align: left;">客户端检测到未进行实名认证的用户已经达到政策规定的游戏时间上限,会触发该事件。</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKPolicyMinorsPaymentLimit</td>
<td style="text-align: left;">6</td>
<td style="text-align: left;">政策需求-未成年充值限制</td>
<td style="text-align: left;">limitStatus,强限制=@"1",弱限制=@"2"</td>
<td style="text-align: left;">NSDictionary</td>
<td style="text-align: left;">客户端检测到用户(未成年人)已经到达政策规定的充值上限,会触发该事件。</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKPolicyNoAuthPaymentLimit</td>
<td style="text-align: left;">7</td>
<td style="text-align: left;">政策需求-未实名账号不允许充值</td>
<td style="text-align: left;">limitStatus,强限制=@"1",弱限制=@"2"</td>
<td style="text-align: left;">NSDictionary</td>
<td style="text-align: left;">客户端检测到未实名用户已经到达政策规定的充值上限,会触发该事件。</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKAccountInfoUpdated</td>
<td style="text-align: left;">8</td>
<td style="text-align: left;">账号信息更新</td>
<td style="text-align: left;">返回NSDictionary类型。其中有三个字段: field(账号哪个字段信息更新了,MSLDUserInfoField类型) isNew(是否从无到有的完善更新) account(账号的完整信息)</td>
<td style="text-align: left;">NSDictionary</td>
<td style="text-align: left;">账号信息发生变动</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKNotificationReceived</td>
<td style="text-align: left;">9</td>
<td style="text-align: left;">收到极光自定义消息回调</td>
<td style="text-align: left;">customMessage:自定义消息。值为MSLDCustomMessage类型</td>
<td style="text-align: left;">NSDictionary</td>
<td style="text-align: left;">收到推送消息</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKOpeninstallDataReceived</td>
<td style="text-align: left;">10</td>
<td style="text-align: left;">收到Openinstall的数据</td>
<td style="text-align: left;">返回的openInstall数据</td>
<td style="text-align: left;">MSLDOpenInstallData</td>
<td style="text-align: left;">接入OpenInstall插件的游戏,从落地页点击,打开APP后,会收到此回调。</td>
</tr>
<tr>
<td style="text-align: left;">MSLDSDKPolicyMinorsCurfewLimit</td>
<td style="text-align: left;">11</td>
<td style="text-align: left;">政策需求-未成年人宵禁限制</td>
<td style="text-align: left;">limitStatus,强限制=@"1",弱限制=@"2"</td>
<td style="text-align: left;">NSDictionary</td>
<td style="text-align: left;">客户端检测到用户(未成年人)进入政策要求的未成年人宵禁时间,会触发该事件</td>
</tr>
</tbody>
</table>
<p><span id="jump_account">MSLDAccount定义</span></p>
<table>
<thead>
<tr>
<th style="text-align: left;">字段名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">playerId</td>
<td style="text-align: left;">NSString</td>
<td>玩家pid</td>
</tr>
<tr>
<td style="text-align: left;">nickName</td>
<td style="text-align: left;">NSString</td>
<td>昵称</td>
</tr>
<tr>
<td style="text-align: left;">avatarUrl</td>
<td style="text-align: left;">NSString</td>
<td>头像 url 地址</td>
</tr>
<tr>
<td style="text-align: left;">phoneNumber</td>
<td style="text-align: left;">NSString</td>
<td>手机号(第四位到第七位为*)</td>
</tr>
<tr>
<td style="text-align: left;">phoneBound</td>
<td style="text-align: left;">BOOL</td>
<td>是否已绑定手机</td>
</tr>
<tr>
<td style="text-align: left;">realNameVerified</td>
<td style="text-align: left;">BOOL</td>
<td>是否已登记实名信息</td>
</tr>
<tr>
<td style="text-align: left;">newPlayer</td>
<td style="text-align: left;">BOOL</td>
<td>是否为新用户</td>
</tr>
<tr>
<td style="text-align: left;">openId</td>
<td style="text-align: left;">NSString</td>
<td>乐逗open_id</td>
</tr>
<tr>
<td style="text-align: left;">sessionId</td>
<td style="text-align: left;">NSString</td>
<td>登录sessionID</td>
</tr>
<tr>
<td style="text-align: left;">gameId</td>
<td style="text-align: left;">NSString</td>
<td>乐逗game_id</td>
</tr>
<tr>
<td style="text-align: left;">lastLoginTime</td>
<td style="text-align: left;">NSString</td>
<td>最后登录时间,返回自1970年以来的秒数</td>
</tr>
<tr>
<td style="text-align: left;">loginType</td>
<td style="text-align: left;">NSString</td>
<td>登录类型</td>
</tr>
<tr>
<td style="text-align: left;">thirdPartyOpenId</td>
<td style="text-align: left;">NSString</td>
<td>三方OpenId</td>
</tr>
<tr>
<td style="text-align: left;">thirdPartyUnionId</td>
<td style="text-align: left;">NSString</td>
<td>三方UnionId</td>
</tr>
<tr>
<td style="text-align: left;">extend</td>
<td style="text-align: left;">NSDictionary</td>
<td>扩展字段</td>
</tr>
</tbody>
</table>
<p><span id="jump_order">MSLDOrder定义</span></p>
<table>
<thead>
<tr>
<th style="text-align: left;">字段名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">productID</td>
<td style="text-align: left;">NSString</td>
<td>商品ID</td>
</tr>
<tr>
<td style="text-align: left;">orderID</td>
<td style="text-align: left;">NSString</td>
<td>支付后台订单ID</td>
</tr>
<tr>
<td style="text-align: left;">extraInfo</td>
<td style="text-align: left;">NSString</td>
<td>透传信息</td>
</tr>
</tbody>
</table>
<p><span id="jump_openinstalldata">MSLDOpenInstallData定义</span></p>
<table>
<thead>
<tr>
<th style="text-align: left;">字段名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">NSString</td>
<td>动态参数,json字符串</td>
</tr>
<tr>
<td style="text-align: left;">channel</td>
<td style="text-align: left;">NSString</td>
<td>渠道编号</td>
</tr>
</tbody>
</table>
<p><span id="jump_userinfo_filed">MSLDUserInfoField定义</span></p>
<table>
<thead>
<tr>
<th style="text-align: left;">字段名</th>
<th style="text-align: left;">值</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">MSLDUserInfoFieldNone</td>
<td style="text-align: left;">0</td>
<td>空</td>
</tr>
<tr>
<td style="text-align: left;">MSLDUserInfoFieldPhone</td>
<td style="text-align: left;">(1 << 0)</td>
<td>手机号</td>
</tr>
<tr>
<td style="text-align: left;">MSLDUserInfoFieldUserName</td>
<td style="text-align: left;">(1 << 1)</td>
<td>用户名</td>
</tr>
<tr>
<td style="text-align: left;">MSLDUserInfoFieldAvatar</td>
<td style="text-align: left;">(1 << 2)</td>
<td>头像</td>
</tr>
<tr>
<td style="text-align: left;">MSLDUserInfoFieldRealName</td>
<td style="text-align: left;">(1 << 3)</td>
<td>实名</td>
</tr>
<tr>
<td style="text-align: left;">MSLDUserInfoFieldPassword</td>
<td style="text-align: left;">(1 << 4)</td>
<td>密码</td>
</tr>
</tbody>
</table>
<p><span id="jump_custom_message">MSLDCustomMessage定义</span></p>
<table>
<thead>
<tr>
<th style="text-align: left;">字段名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">message</td>
<td style="text-align: left;">NSString</td>
<td>消息内容</td>
</tr>
<tr>
<td style="text-align: left;">messageId</td>
<td style="text-align: left;">NSString</td>
<td>消息id</td>
</tr>
<tr>
<td style="text-align: left;">extra</td>
<td style="text-align: left;">NSDictionary</td>
<td>额外信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">// 设置代理
[MSLDSDK sharedInstance].delegate = self;
// 实现代理方法
- (void)onMSLDSDKEvent:(MSLDSDKGlobalEvent)eventID msg:(NSString *)msg data:(id)data
{
if (MSLDSDKSwitchAccount == eventID) {
// 用户切换帐号成功
MSLDAccount *account = data;
} else if (MSLDSDKLogOut == eventID) {
// 用户退出登录
MSLDAccount *account = data;
} else if (MSLDSDKRedeliveryOrder == eventID) {
// 产生补单
MSLDOrder *order = data;
}
}</code></pre>
<h2>异步的回调函数</h2>
<blockquote>
<p>SDK 异步回调的函数原型。以下 API 接口中有使用该回调函数。</p>
</blockquote>
<p><strong>成功的回调函数 MSLDSDKSuccess</strong></p>
<pre><code class="language-objc">typedef void (^MSLDSDKSuccess)(NSString *msg, id data);</code></pre>
<table>
<thead>
<tr>
<th>参数名</th>
<th>类型</th>
<th>释义</th>
</tr>
</thead>
<tbody>
<tr>
<td>msg</td>
<td>NSString</td>
<td>属于提示信息</td>
</tr>
<tr>
<td>data</td>
<td>id</td>
<td>该值可能为空,具体看调用的接口</td>
</tr>
</tbody>
</table>
<p><strong>失败的回调函数 MSLDSDKFail</strong></p>
<pre><code class="language-objc">typedef void (^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<table>
<thead>
<tr>
<th>参数名</th>
<th>类型</th>
<th>释义</th>
</tr>
</thead>
<tbody>
<tr>
<td>code</td>
<td>MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td>msg</td>
<td>NSString</td>
<td>属于提示信息</td>
</tr>
<tr>
<td>errorData</td>
<td>id</td>
<td>该值可能为空,具体看调用的接口</td>
</tr>
</tbody>
</table>
<h2>生命周期</h2>
<p><strong>SDK 生命周期函数原型:</strong></p>
<pre><code class="language-objc">- (BOOL)msld_application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
- (void)msld_applicationWillResignActive:(UIApplication *)application;
- (void)msld_applicationDidEnterBackground:(UIApplication *)application;
- (void)msld_applicationWillEnterForeground:(UIApplication *)application;
- (void)msld_applicationDidBecomeActive:(UIApplication *)application;
- (void)msld_application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken;
- (BOOL)msld_application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation;
- (BOOL)msld_application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options;</code></pre>
<p>在接入方的 <code>AppDelegate.m</code> 文件对应的系统回调函数中,调用以上生命周期函数即可,注意接入方可以在 <code>AppDelegate.m</code> 中处理完自己的业务逻辑再调用该 SDK 的生命周期方法即可。</p>
<p>生命周期函数的接入,可以参考提供的 <strong>iOS Demo</strong> 的接入方式。</p>
<h2>API 详情</h2>
<h3>初始化 SDK</h3>
<p><strong>简要描述:</strong>
初始化 SDK 的函数,该方法的调用需要放到 <code>application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions</code> 中,调用 SDK 的其他任何接口之前必须要初始化 SDK 否则无效。</p>
<p><strong>函数原型:</strong></p>
<pre><code class="language-objc">- (void)initSDKWithSuccess:(MSLDSDKSuccess)success fail:(MSLDSDKFail)fail;</code></pre>
<p><strong>函数参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">success</td>
<td style="text-align: left;">MSLDSDKSuccess</td>
<td>初始化成功回调</td>
</tr>
<tr>
<td style="text-align: left;">fail</td>
<td style="text-align: left;">MSLDSDKFail</td>
<td>初始化失败回调</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<p>可以参考 <code>回调函数</code> 的说明。</p>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> [[MSLDSDK sharedInstance] initSDKWithSuccess:^(NSString *msg, id data) {
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
// 如果发生错误,需要检查自己的配置文件是否正确,必要参数是否完整
}];</code></pre>
<h3>业务功能 API</h3>
<h4>获取配置信息</h4>
<blockquote>
<p>该接口可以获取当前游戏配置信息。</p>
</blockquote>
<p><strong>简要描述:</strong></p>
<p>获取当前游戏的配置信息。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取游戏配置</td>
<td style="text-align: left;">同步调用</td>
<td style="text-align: left;">ROUTE_SDK_CONFIG</td>
<td style="text-align: left;">MSLDConfig</td>
</tr>
</tbody>
</table>
<p><strong>返回值说明:</strong></p>
<p>MSLDConfig 定义:</p>
<table>
<thead>
<tr>
<th style="text-align: left;">字段名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">appId</td>
<td style="text-align: left;">NSString</td>
<td>AppId</td>
</tr>
<tr>
<td style="text-align: left;">appKey</td>
<td style="text-align: left;">NSString</td>
<td>Appkey</td>
</tr>
<tr>
<td style="text-align: left;">publicKey</td>
<td style="text-align: left;">NSString</td>
<td>publicKey</td>
</tr>
<tr>
<td style="text-align: left;">channelId</td>
<td style="text-align: left;">NSString</td>
<td>渠道Id</td>
</tr>
<tr>
<td style="text-align: left;">channelGroupId</td>
<td style="text-align: left;">NSString</td>
<td>渠道组Id</td>
</tr>
<tr>
<td style="text-align: left;">forumId</td>
<td style="text-align: left;">NSString</td>
<td>社区Id</td>
</tr>
<tr>
<td style="text-align: left;">isTrial</td>
<td style="text-align: left;">BOOL</td>
<td>是否是提审模式</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">MSLDConfig *config = [[MSLDSDK sharedInstance] syncActionWithLDUrl:ROUTE_SDK_CONFIG param:nil];</code></pre>
<h4>帐号</h4>
<p>SDK 提供多种种登录API,通过打开登录面板登录(支持游客、用户名和密码、手机号+验证码登录方式)、游客登录以及自动登录。</p>
<h5>登录</h5>
<h6>1. 登录面板</h6>
<p><strong>简要描述:</strong></p>
<p>拉起SDK登录面板。</p>
<p><strong>注意:</strong></p>
<p>若要使用该功能则必须集成MSLDSDKUI插件</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">登录面板</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ACCOUNT_LOGIN</td>
<td style="text-align: left;">使用该接口前请先保证SDK初始化成功</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_ACCOUNT_LOGIN param:@{} success:^(NSString *msg, id data) {
// 登录成功
MSLDAccount *account = data;
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
if (MSLDErrorCodeUIUserClose == code) {
// 用户取消了登录
} else {
// 登录失败
}
}];</code></pre>
<h6>2. 游客登录</h6>
<p><strong>简要描述:</strong>
使用游客身份登录SDK,重复调用时会登录到同一账户。</p>
<p><strong>注意:</strong>
若要使用该功能则必须集成MSLDSDKUI插件</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">游客登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ACCOUNT_GUEST_LOGIN</td>
<td style="text-align: left;">使用该接口前请先保证SDK初始化成功</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_ACCOUNT_GUEST_LOGIN param:@{} success:^(NSString *msg, id data) {
// 游客登录成功
MSLDAccount *account = data;
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
if (MSLDErrorCodeUIUserClose == code) {
// 用户取消了登录
} else {
// 游客登录失败
}
}];</code></pre>
<h6>3. 自动登录</h6>
<p><strong>简要描述:</strong></p>
<p>使用用户登录过的账户登录,建议游戏启动后尝试使用此接口登录,如若自动登录不成功,再显示其他登录方式</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">自动登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ACCOUNT_AUTO_LOGIN</td>
<td style="text-align: left;">使用该接口前请先保证SDK初始化成功</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_ACCOUNT_AUTO_LOGIN param:@{} success:^(NSString *msg, id data) {
// 自动登录成功
MSLDAccount *account = data;
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
// 自动登录失败
}];</code></pre>
<h5>4. 手机号验证码登录</h5>
<p><strong>简要描述:</strong></p>
<p>使用手机号+验证码方式登录。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">手机号验证码登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_DIRECT_PHONE_LOGIN</a></td>
<td style="text-align: left;"></td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> NSMutableDictionary *params = [[NSMutableDictionary alloc] initWithCapacity:2];
[params msld_setObject:phoneNumber forKey:@"phoneNumber"];
[params msld_setObject:verficationCode forKey:@"verficationCode"];
__block MSLDMBProgressHUD *hud = [MSLDMBProgressHUD showHUDAddedTo:self.view animated:YES];
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_ACCOUNT_DIRECT_PHONE_LOGIN param:params success:^(NSString *msg, id data) {
[hud hideAnimated:YES];
// 手机号验证码登录成功
// do something...
MSLDAccount *account = data;
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
[hud hideAnimated:YES];
// 手机号验证码登录失败
// do something...
}];</code></pre>
<h5>5. 用户名密码登录</h5>
<p><strong>简要描述:</strong></p>
<p>使用用户名+密码码或者手机号+密码方式登录。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">用户名密码登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_DIRECT_USERNAME_LOGIN</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> NSMutableDictionary *params = [[NSMutableDictionary alloc] initWithCapacity:2];
[params msld_setObject:userName forKey:@"userName"];
[params msld_setObject:passWord forKey:@"passWord"];
__block MSLDMBProgressHUD *hud = [MSLDMBProgressHUD showHUDAddedTo:self.view animated:YES];
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_ACCOUNT_DIRECT_USERNAME_LOGIN param:params success:^(NSString *msg, id data) {
[hud hideAnimated:YES];
// 帐号密码登录成功
MSLDAccount *account = data;
// do something...
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
[hud hideAnimated:YES];
// 帐号密码登录失败
// do something...
}];</code></pre>
<h5>6. 微信登录</h5>
<p><strong>简要描述:</strong></p>
<p>调用起微信客户端,使用微信信息进行登录</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">微信登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_WECHAT_LOGIN</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<h5>7. QQ登录</h5>
<p><strong>简要描述:</strong></p>
<p>调用起QQ客户端,使用QQ信息进行登录</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">微信登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_QQ_LOGIN</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<h5>8. 极光一键登录</h5>
<blockquote>
<p>该功能从MSSDK 1.5.0版本开始支持。</p>
</blockquote>
<p><strong>简要描述:</strong></p>
<p>拉起极光一键登录授权页,用户点击“手机一键登录”授权后完成登录流程 </p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">极光一键登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_DIRECT_JIGUANG_LOGIN</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">KEY_AGREEMENT_CHECKED</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>是否勾选同意协议 "1" = 同意协议</td>
</tr>
<tr>
<td style="text-align: left;">KEY_JIGUANG_LOGIN_LOGO</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">UIImage</td>
<td>极光授权页面上的logo,不传默认“乐逗游戏”,图片大小为258px*106px</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_ACCOUNT_DIRECT_JIGUANG_LOGIN param:@{KEY_AGREEMENT_CHECKED: @"1"} success:^(NSString *msg, id data) {
[hud hideAnimated:YES];
// 一键登录成功
MSLDAccount *account = data;
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
// 一键登录失败
}];</code></pre>
<h4>登出</h4>
<blockquote>
<p>已登录的用户可以调用登出接口退出SDK的登录状态。</p>
</blockquote>
<p><strong>简要描述:</strong></p>
<p>调用该接口,退出当前登录SDK的帐号</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">登出</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_DIRECT_LOGOUT</a></td>
<td style="text-align: left;"></td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h4>发送验证码</h4>
<blockquote>
<p>获取不同场景下的验证码。</p>
</blockquote>
<h5>1. 发送验证码</h5>
<p><strong>简要描述:</strong></p>
<p>调用该接口,获取验证码。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">发送验证码</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_DIRECT_GET_VERIFY_CODE</a></td>
<td style="text-align: left;"></td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">phoneNumber</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>手机号码</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h4>绑定手机</h4>
<blockquote>
<p>将业务帐号与指定的手机号码绑定在一起。</p>
</blockquote>
<h5>1. 查询手机绑定账号信息</h5>
<p><strong>简要描述:</strong>
在绑定手机之前,需要先查询该手机的绑定信息,看看该手机是否已经绑定过账号。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">查询手机绑定账号信息</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_DIRECT_QUERY_PHONE_BIND_ACCOUNT</a></td>
<td style="text-align: left;"></td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">phoneNumber</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>手机号码</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">NSDictionary</td>
<td>查询成功的信息</td>
</tr>
</tbody>
</table>
<h5>2. 绑定手机号码</h5>
<p><strong>简要描述:</strong></p>
<p>当前帐号没有绑定过手机的情况下,可以调用该接口,将当前帐号绑定到指定手机号码上。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">绑定手机号码</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_DIRECT_BIND_PHONE</a></td>
<td style="text-align: left;"></td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">phoneNumber</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>手机号码</td>
</tr>
<tr>
<td style="text-align: left;">verficationCode</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>验证码</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h5>3. 换绑手机号</h5>
<p><strong>简要描述:</strong></p>
<p>已绑定过手机号码的帐号,经过旧手机验证,并新手机号码取得换绑验证码后,可以调用该接口,将帐号绑定到新手机号码下。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">换绑手机号</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_DIRECT_CHANGE_BIND_PHONE</a></td>
<td style="text-align: left;"></td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">phoneNumber</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>手机号码</td>
</tr>
<tr>
<td style="text-align: left;">verficationCode</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>验证码</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h4>密码相关</h4>
<blockquote>
<p>帐号密码相关接口,SDK提供设置密码,修改密码,重置密码(找回密码)等功能。</p>
</blockquote>
<h5>1. 设置密码</h5>
<p><strong>简要描述:</strong></p>
<p>当前使用手机号登录的帐号没有设置过密码且不是游客登录的情况下,调用该接口设置密码。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">设置密码</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_DIRECT_SET_PASSWORD</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">passWord</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>新密码</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h5>2. 修改密码</h5>
<p><strong>简要描述:</strong></p>
<p>当前登录帐号已设置过密码且用户能提供旧密码的情况下,调用该接口修改密码。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">修改密码</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_DIRECT_CHANGE_PASSWORD</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">oldPassWord</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>旧密码</td>
</tr>
<tr>
<td style="text-align: left;">newPassWord</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>新密码</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h5>3. 重置密码(找回密码)</h5>
<p><strong>简要描述:</strong></p>
<p>使用手机号+验证码重置登录密码,值得注意的是,此接口不需要用户先行登录。
忘记密码也可以使用该接口重新设置密码。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">重置密码</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_DIRECT_RESET_PASSWORD</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">phoneNumber</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>手机号</td>
</tr>
<tr>
<td style="text-align: left;">verficationCode</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>验证码</td>
</tr>
<tr>
<td style="text-align: left;">newPassWord</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>新密码</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h5>用户中心</h5>
<p>SDK 提供一个统一的个人中心面板,包含用户信息,手机绑定,密码设置,实名认证及切换帐号等功能。</p>
<h6>1. 打开用户中心面板</h6>
<p><strong>简要描述:</strong></p>
<p>拉起个人中心面板。</p>
<p><strong>注意:</strong></p>
<p>若要使用该功能则必须集成MSLDSDKUI插件且是已登录状态</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">个人中心面板</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ACCOUNT_USER_CENTER</td>
<td style="text-align: left;">使用该接口前请先保证SDK初始化成功且用户已登录成功</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h6>2. 获取用户信息</h6>
<blockquote>
<p>该接口可以获取登录用户的数据。</p>
</blockquote>
<p><strong>简要描述:</strong></p>
<p>获取当前登录的用户信息。</p>
<p><strong>注意:</strong></p>
<p>只有在登录状态下能获取到用户信息,没有登录返回空</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取用户信息</td>
<td style="text-align: left;">同步调用</td>
<td style="text-align: left;">ROUTE_ACCOUNT_LOGINED_USER_INFO</td>
<td style="text-align: left;"><a href="##jump_account">MSLDAccount</a></td>
</tr>
</tbody>
</table>
<p><strong>返回值说明:</strong></p>
<p>查看 <a href="#jump_account">MSLDAccount定义</a></p>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">MSLDAccount *account = [[MSLDSDK sharedInstance] syncActionWithLDUrl:ROUTE_ACCOUNT_LOGINED_USER_INFO param:nil];</code></pre>
<h5>实名认证</h5>
<p>SDK 提供的快速实名认证功能。</p>
<h6>1、打开实名认证面板</h6>
<p><strong>简要描述:</strong></p>
<p>拉起实名认证面板。</p>
<p><strong>注意:</strong></p>
<p>若要使用该功能则必须集成 <code>MSLDSDKUI</code> 插件且是已登录状态</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">实名认证面板</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ACCOUNT_AUTHENTICATION</td>
<td style="text-align: left;">使用该接口前请先保证SDK初始化成功且用户已登录成功</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_ACCOUNT_AUTHENTICATION param:nil success:^(NSString *msg, id data) {
// 实名认证成功
MSLDLOG(@"auth success! msg: %@, data :%@",msg, data);
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
// 实名认证失败
MSLDLOG(@"auth fail! code %li msg: %@, data :%@", (long)code, msg, errorData);
}];</code></pre>
<h6>2、实名认证</h6>
<blockquote>
<p>提供实名认证功能,该接口不提供UI,开发者可以自行定义UI</p>
</blockquote>
<p><strong>简要描述:</strong></p>
<p>该接口提供实名认证功能,目前仅支持身份证号码+姓名的方式完成实名认证。值得注意的是,游客账户也可以完成实名认证。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">实名认证</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_DIRECT_AUTHENTICATION</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">realName</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>真实姓名</td>
</tr>
<tr>
<td style="text-align: left;">identificationNumber</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>身份证号码</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h4>用户协议与隐私政策</h4>
<blockquote>
<p>提供最新的用户协议与隐私政策内容。提供带UI展示方式和仅提供数据两种方式。</p>
</blockquote>
<h5>1. 用户协议(带UI)</h5>
<p><strong>简要描述:</strong></p>
<p>展示用户协议面板。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">用户协议</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_USER_AGREEMENT</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h5>2. 隐私政策(带UI)</h5>
<p><strong>简要描述:</strong></p>
<p>展示隐私政策面板</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">隐私政策</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_ACCOUNT_PRIVATE_AGREEMENT</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h5>3. 用户协议(仅数据)</h5>
<p><strong>简要描述:</strong></p>
<p>该接口提供最新的用户协议的HTML文本内容。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">用户协议</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_DIRECT_USER_AGREEMENT</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h5>4. 隐私政策(仅数据)</h5>
<p><strong>简要描述:</strong></p>
<p>该接口提供最新的隐私政策的HTML文本内容。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">隐私政策</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_DIRECT_PRIVATE_AGREEMENT</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<h4>支付</h4>
<p>SDK 目前仅支持苹果内购相关功能。</p>
<h5>1. 查询订阅</h5>
<p><strong>简要描述:</strong>
去服务后台查询与当前账号相关的且在有效期内的订阅信息。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">查询订阅</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_PAY_QUERY_SUBSCRIPTIONS</td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">NSArray<MSLDSubscribingItem *></td>
<td>订阅信息列表,数组元素为 MSLDSubscribingItem</td>
</tr>
</tbody>
</table>
<p>MSLDSubscribingItem 定义:</p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">productId</td>
<td style="text-align: left;">NSString</td>
<td>订阅道具ID</td>
</tr>
<tr>
<td style="text-align: left;">expirationTime</td>
<td style="text-align: left;">NSString</td>
<td>到期时间,返回自1970年以来的秒数</td>
</tr>
<tr>
<td style="text-align: left;">payMethod</td>
<td style="text-align: left;">NSString</td>
<td>付款方式</td>
</tr>
</tbody>
</table>
<h5>2. 恢复购买</h5>
<p><strong>简要描述:</strong>
去苹果后台查询当前AppleID在游戏内购买的商品记录。</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">恢复购买</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_PAY_RESTORE_TRANSACTIONS</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">NSArray</td>
<td>商品列表,数组元素为商品ID</td>
</tr>
</tbody>
</table>
<h5>3. 查询道具信息</h5>
<p><strong>简要描述:</strong>
去苹果后台查询商品信息。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">查询道具信息</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_PAY_QUERY_PRODUCT</td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">NSDictionary</td>
<td>商品信息</td>
</tr>
</tbody>
</table>
<h5>4. 购买商品</h5>
<p><strong>简要描述:</strong></p>
<p>先根据传入的商品ID调起苹果支付购买商品</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">购买商品</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_PAY_PURCHASE_PRODUCT</td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">KEY_PAY_PRODUCT_ID</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>商品ID</td>
</tr>
<tr>
<td style="text-align: left;">KEY_PLAYER_ID</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>玩家ID</td>
</tr>
<tr>
<td style="text-align: left;">KEY_PAY_REMARK</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>订单备注信息</td>
</tr>
<tr>
<td style="text-align: left;">KEY_PAY_MCH_ORDER_NO</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>商户订单号,即游戏CP订单号</td>
</tr>
<tr>
<td style="text-align: left;">KEY_PAY_CLIENT_INFO</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>客户端透传参数,此参数为第三方支付可能需要,具体根据第三方支付参数决,默认为空对象</td>
</tr>
<tr>
<td style="text-align: left;">KEY_PAY_CP_DATA</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>游戏数据</td>
</tr>
<tr>
<td style="text-align: left;">KEY_PAY_ATTACH</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>透传字段,创建成功和查询接口会原样返回</td>
</tr>
<tr>
<td style="text-align: left;">noticeUrl</td>
<td style="text-align: left;">NO</td>
<td style="text-align: left;">NSString *</td>
<td>1.5.1版本开始支持。 客户端决定的支付通知回调地址。如果客户端传入了此值,服务器将优先使用传入的值作为支付通知的回调地址。如果此值为空,则使用后台配置的地址作为回调地址。</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_order">MSLDOrder</a></td>
<td>支付成功的订单信息</td>
</tr>
</tbody>
</table>
<h4>分享</h4>
<blockquote>
<p>提供微信、QQ各个场景下的分享图片、链接等功能。</p>
</blockquote>
<h5>1.微信分享图片到会话</h5>
<p><strong>简要描述</strong>
分享某一张图片到指定的微信会话中</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">微信分享图片到会话</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_IMAGE</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">[NSString]</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">image</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>图片对象</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>2.微信分享图片到朋友圈</h5>
<p><strong>简要描述</strong>
分享某一张图片到微信朋友圈中</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">微信分享图片到朋友圈</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_IMAGE</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">[NSString]</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">image</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>图片对象</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>3.微信分享链接到会话</h5>
<p><strong>简要描述</strong>
分享某个链接到指定的微信会话中</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">微信分享链接到会话</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_WEBPAGE</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">thumbImage</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>链接封面图片对象</td>
</tr>
<tr>
<td style="text-align: left;">webpageUrl</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>要分享的链接</td>
</tr>
<tr>
<td style="text-align: left;">title</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>链接标题</td>
</tr>
<tr>
<td style="text-align: left;">description</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>链接描述</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>4.微信分享链接到朋友圈</h5>
<p><strong>简要描述</strong>
分享某个链接到微信朋友圈</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">微信分享链接到朋友圈</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_WEBPAGE</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">thumbImage</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>链接封面图片对象</td>
</tr>
<tr>
<td style="text-align: left;">webpageUrl</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>要分享的链接</td>
</tr>
<tr>
<td style="text-align: left;">title</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>链接标题</td>
</tr>
<tr>
<td style="text-align: left;">description</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>链接描述</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>5.微信分享小程序</h5>
<p><strong>简要描述</strong>
分享某个小程序到指定的微信会话</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">微信分享小程序</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_MINI_PROGRAM</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">userName</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>微信小程序原始ID</td>
</tr>
<tr>
<td style="text-align: left;">thumbImage</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>小程序封面图片</td>
</tr>
<tr>
<td style="text-align: left;">webpageUrl</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>兼容微信低版本的链接</td>
</tr>
<tr>
<td style="text-align: left;">title</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>分享标题</td>
</tr>
<tr>
<td style="text-align: left;">description</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>分享描述</td>
</tr>
<tr>
<td style="text-align: left;">path</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>打开小程序的路径</td>
</tr>
<tr>
<td style="text-align: left;">miniprogramType</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSNumber</td>
<td>小程序场景类型 (0:正式版 1:开发版 2:体验版)</td>
</tr>
<tr>
<td style="text-align: left;">withShareTicket</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>是否使用带shareTicket的分享,@"1" = 携带,@"0" = 不带</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>6.微信打开小程序</h5>
<p><strong>简要描述</strong>
打开某个指定的小程序</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">微信打开小程序</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_LAUNCH_MINI_PROGRAM</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">userName</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>微信小程序原始ID</td>
</tr>
<tr>
<td style="text-align: left;">path</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>打开小程序的路径,不填默认打开小程序首页</td>
</tr>
<tr>
<td style="text-align: left;">miniprogramType</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSNumber</td>
<td>小程序场景类型 (0:正式版 1:开发版 2:体验版)</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>7.QQ分享图片到好友</h5>
<p><strong>简要描述</strong></p>
<p>分享某一张图片到指定的QQ好友</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">QQ分享图片到好友</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_IMAGE</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">[NSString]</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">image</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>图片对象</td>
</tr>
<tr>
<td style="text-align: left;">thumbImage</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>预览图对象</td>
</tr>
<tr>
<td style="text-align: left;">title</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>分享标题</td>
</tr>
<tr>
<td style="text-align: left;">description</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>分享描述</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>8.QQ分享图片到Qzone</h5>
<p><strong>简要描述</strong>
分享某一张图片到QQ空间</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">QQ分享图片到Qzone</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_IMAGE</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">[NSString]</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">image</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>图片对象</td>
</tr>
<tr>
<td style="text-align: left;">thumbImage</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>预览图对象</td>
</tr>
<tr>
<td style="text-align: left;">title</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>分享标题</td>
</tr>
<tr>
<td style="text-align: left;">description</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>分享描述</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>9.QQ分享链接到好友</h5>
<p><strong>简要描述</strong>
分享某个链接到指定的QQ好友</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">QQ分享链接到好友</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_WEBPAGE</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">thumbImage</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>链接封面图片对象</td>
</tr>
<tr>
<td style="text-align: left;">webpageUrl</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>要分享的链接</td>
</tr>
<tr>
<td style="text-align: left;">title</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>链接标题</td>
</tr>
<tr>
<td style="text-align: left;">description</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>链接描述</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>10.QQ分享链接到Qzone</h5>
<p><strong>简要描述</strong>
分享某个链接到Qzone</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">QQ分享链接到Qzone</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_WEBPAGE</td>
<td style="text-align: left;">使用该功能前请先调用接口判断是否安装微信</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">thumbImage</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>链接封面图片对象</td>
</tr>
<tr>
<td style="text-align: left;">webpageUrl</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>要分享的链接</td>
</tr>
<tr>
<td style="text-align: left;">title</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>链接标题</td>
</tr>
<tr>
<td style="text-align: left;">description</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>链接描述</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>11.微博分享图片</h5>
<p><strong>简要描述</strong>
分享图片到微博</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">分享图片到微博</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_IMAGE</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">[NSString]</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">image</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>图片对象(大小不能超过10M)</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WEIBO</td>
<td style="text-align: left;">NSString</td>
<td>分享到微博</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">- (void)shareImageToWeiBo{
UIImage *image = [UIImage imageNamed:@"bg_launcher"];
NSDictionary *dic = @{
SHARE_SCENE: SHARE_WEIBO,
@"image": image,
};
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_SHARE_IMAGE param:dic success:^(NSString *msg, id data) {
MSLDLOG(@"--------- shareImageToWeiBO success");
[UIAlertView msld_showAlertDialogWithTitle:@"提示" msg:msg];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
MSLDLOG(@"--------- shareImageToWeiBO fail");
[UIAlertView msld_showAlertDialogWithTitle:@"提示" msg:msg];
}];
}
</code></pre>
<h5>12.微博分享链接</h5>
<p><strong>简要描述</strong>
分享链接到微博</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">分享链接到微博</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_SHARE_WEBPAGE</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">[NSString]</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">title</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">[NSString]</td>
<td>分享链接标题(不能为空且长度小于1k)</td>
</tr>
<tr>
<td style="text-align: left;">description</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">[NSString]</td>
<td>分享链接描述(长度小于1k)</td>
</tr>
<tr>
<td style="text-align: left;">thumbImage</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>多媒体内容缩略图(大小小于32k)</td>
</tr>
<tr>
<td style="text-align: left;">scheme</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">[NSString]</td>
<td>点击多媒体呼起第三方应用特定页面(长度小于255)</td>
</tr>
<tr>
<td style="text-align: left;">webpageUrl</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">[NSString]</td>
<td>网页的url地址(不能为空且长度不能超过255)</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WEIBO</td>
<td style="text-align: left;">NSString</td>
<td>分享到微博</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">
- (void)shareWebToWeiBo{
UIImage *image = [UIImage imageNamed:@"image_2"];
NSDictionary *param = @{ SHARE_SCENE: SHARE_WEIBO,
@"title": @"分享链接标题",
@"description": @"分享链接描述",
@"thumbImage": image,
@"scheme":@"",
@"webpageUrl": @"http://weibo.com/p/1001603849727862021333?rightmod=1&wvr=6&mod=noticeboard"};
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_SHARE_WEBPAGE param:param success:^(NSString *msg, id data) {
[MSLDLog logDebug:@"分享链接到微博成功! msg=%@", msg];
[UIAlertView msld_showAlertDialogWithTitle:@"提示" msg:msg];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
[MSLDLog logDebug:@"分享链接到微博失败! code:%ld,msg=%@,errorData=%@", code, msg, errorData];
[UIAlertView msld_showAlertDialogWithTitle:@"提示" msg:msg];
}];
}
</code></pre>
<h4>数据统计</h4>
<p>这部分是提供给接入者做数据统计使用,具体的 API 详情可以参考 <a href="https://www.showdoc.cc/mssdk?page_id=2629901549097686">数据统计 API</a> 文档。</p>
<h4>广告追踪</h4>
<blockquote>
<p>提供广告追踪能力,广告的下载与登录转化的统计功能。</p>
</blockquote>
<h5>1.登录上报</h5>
<p><strong>简要描述</strong>
上报登录事件(生命周期内只上报一次登录)</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">登录上报</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ADTRACK_LOGIN</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">playerId</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>登录用户的playerId</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>2.消费上报</h5>
<p><strong>简要描述</strong>
上报消费、购买事件</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">消费上报</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ADTRACK_PURCHASE</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">playerId</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>登录用户的playerId</td>
</tr>
<tr>
<td style="text-align: left;">amount</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>购买数量</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>3.自定义上报</h5>
<p><strong>简要描述</strong>
上报自定义事件</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">自定义事件上报</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ADTRACK_CUSTOM</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">eventName</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>事件名称</td>
</tr>
<tr>
<td style="text-align: left;">customData</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSDictionary</td>
<td>自定义信息</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h5>4.广告点击事件上报</h5>
<p><strong>简要描述</strong>
上报广告的点击事件</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">消费上报</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ADTRACK_ADCLICK</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">platformType</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>广告平台名称,详见广告平台附表</td>
</tr>
<tr>
<td style="text-align: left;">displayType</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>广告类型,详见广告类型附表</td>
</tr>
</tbody>
</table>
<p><strong>广告平台附表</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">广告平台名称</th>
<th style="text-align: left;">取值</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">未知广告平台</td>
<td style="text-align: left;">0</td>
</tr>
<tr>
<td style="text-align: left;">腾讯优良汇</td>
<td style="text-align: left;">1</td>
</tr>
<tr>
<td style="text-align: left;">穿山甲</td>
<td style="text-align: left;">2</td>
</tr>
<tr>
<td style="text-align: left;">百度移动联盟</td>
<td style="text-align: left;">3</td>
</tr>
<tr>
<td style="text-align: left;">Vungle</td>
<td style="text-align: left;">4</td>
</tr>
<tr>
<td style="text-align: left;">Unity</td>
<td style="text-align: left;">5</td>
</tr>
<tr>
<td style="text-align: left;">Inmobi</td>
<td style="text-align: left;">6</td>
</tr>
<tr>
<td style="text-align: left;">Adcolony</td>
<td style="text-align: left;">7</td>
</tr>
<tr>
<td style="text-align: left;">Mobvista</td>
<td style="text-align: left;">8</td>
</tr>
<tr>
<td style="text-align: left;">Uniplay</td>
<td style="text-align: left;">9</td>
</tr>
</tbody>
</table>
<p><strong>广告类型附表附表</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">广告类型</th>
<th style="text-align: left;">取值</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">未知广告类型</td>
<td style="text-align: left;">0</td>
</tr>
<tr>
<td style="text-align: left;">视频广告</td>
<td style="text-align: left;">1</td>
</tr>
<tr>
<td style="text-align: left;">插页广告</td>
<td style="text-align: left;">2</td>
</tr>
<tr>
<td style="text-align: left;">banner广告</td>
<td style="text-align: left;">3</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误对象</td>
</tr>
</tbody>
</table>
<h4>问卷调查</h4>
<h5>1. 问卷调查是否可用</h5>
<p><strong>简要描述</strong>
查询问卷调查是否可用接口</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">问卷调查是否可用</td>
<td style="text-align: left;">同步调用</td>
<td style="text-align: left;">ROUTE_QUESTIONNAIRE_ISENABLE</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong>
无</p>
<p><strong>返回值</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">NSString *</td>
<td>代表是否可用的字符串,可转换为bool类型</td>
</tr>
</tbody>
</table>
<h5>2. 展示问卷调查面板</h5>
<p><strong>简要描述</strong>
展示问卷调查面板接口</p>
<p><strong>功能说明</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">展示问卷调查面板</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_QUESTIONNAIRE_OPEN</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>是否必传</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">level</td>
<td style="text-align: left;">NSString *</td>
<td>YES</td>
<td>用户等级</td>
</tr>
<tr>
<td style="text-align: left;">accruingAmounts</td>
<td style="text-align: left;">NSString *</td>
<td>YES</td>
<td>用户累计消费金额</td>
</tr>
<tr>
<td style="text-align: left;">consecutiveDays</td>
<td style="text-align: left;">NSString *</td>
<td>YES</td>
<td>用户连续登陆天数</td>
</tr>
<tr>
<td style="text-align: left;">serverId</td>
<td style="text-align: left;">NSString *</td>
<td>YES</td>
<td>服务器ID</td>
</tr>
<tr>
<td style="text-align: left;">roleId</td>
<td style="text-align: left;">NSString *</td>
<td>YES</td>
<td>角色ID</td>
</tr>
<tr>
<td style="text-align: left;">playerId</td>
<td style="text-align: left;">NSString *</td>
<td>YES</td>
<td>玩家ID</td>
</tr>
<tr>
<td style="text-align: left;">extra</td>
<td style="text-align: left;">NSString *</td>
<td>NO</td>
<td>额外信息,保留</td>
</tr>
<tr>
<td style="text-align: left;">url</td>
<td style="text-align: left;">NSString *</td>
<td>NO</td>
<td>1.4.2版本开始支持。 客户端决定的问卷URL地址。如果客户端传入了此值,问卷调查将优先使用传入的值作为问卷地址展示给用户。如果此值为空,则使用后台配置的默认问卷地址。</td>
</tr>
</tbody>
</table>
<h5>获取微信昵称和头像</h5>
<p><strong>简要描述:</strong></p>
<p>获取微信昵称和头像,微信授权成功并同步完信息后会返回新的MSLDAccount对象</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取微信昵称和头像</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_ACCOUNT_DIRECT_SYNC_WECHAT_INFO</td>
<td style="text-align: left;"></td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>获取微信头像和昵称成功后的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> [[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_ACCOUNT_DIRECT_WECHAT_AUTH param:nil success:^(NSString *msg, id account) {
[MSLDLog logDebug:@"获取微信头像和昵称成功: %@", account];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
NSString *logStr = [NSString stringWithFormat:@"获取微信头像和昵称失败!code = %ld, msg = %@, data = %@", (long)code, msg, errorData];
[MSLDLog logDebug:@"%@", logStr];
}];</code></pre>
<h4>LBS</h4>
<h5>1. 获取位置信息权限</h5>
<p><strong>简要描述:</strong></p>
<p>想要获取位置信息,需要用户授权。调用此接口,开始向用户请求位置信息授权。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取位置信息权限</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_LBS_REQUEST_LOCATION_PERMISSIONS</td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">isShowSettingTip</td>
<td style="text-align: left;">NSString</td>
<td>是否显示如何设置位置权限的提示。0:不显示,其他值:显示</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">NSString</td>
<td>无</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> NSDictionary * param = @{@"isShowSettingTip":@"1"}; // 展示提示
// NSDictionary * param = @{@"isShowSettingTip":@"0"}; // 不展示提示
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_LBS_REQUEST_LOCATION_PERMISSIONS param:param success:^(NSString *msg, id data) {
[MSLDLog logDebug:@"dj 获取授权成功! msg:%@, auth:[%@]", msg,data];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
[MSLDLog logDebug:@"dj 获取授权失败! msg:%@, auth:[%@]", msg,errorData];
}];</code></pre>
<h5>2. 获取附近的用户列表</h5>
<p><strong>简要描述:</strong></p>
<p>获取附近玩家用户列表。</p>
<blockquote>
<p>注意: 1. 附近的人记录限制100条; 2. 默认缓存时间10分钟</p>
</blockquote>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取附近玩家用户列表</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_LBS_SEARCHNEARBY</td>
<td style="text-align: left;"></td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">pageIndex</td>
<td style="text-align: left;">NSInteger</td>
<td>页索引</td>
</tr>
<tr>
<td style="text-align: left;">pageSize</td>
<td style="text-align: left;">NSInteger</td>
<td>页大小</td>
</tr>
<tr>
<td style="text-align: left;">radius</td>
<td style="text-align: left;">NSInteger</td>
<td>半径,单位为KM 搜索半径过大会影响服务端的性能,最好控制在100KM以内</td>
</tr>
<tr>
<td style="text-align: left;">sort</td>
<td style="text-align: left;">NSString</td>
<td>距离排序:desc由远及近/asc由近及远搜索</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">NSString</td>
<td>回调数据,json格式字符串,详情见返回data示例</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> NSDictionary * param = @{
@"pageIndex": pageIndex == nil?@"":pageIndex,
@"pageSize": pageSize == nil?@"":pageSize,
@"sort": sort == nil?@"":sort,
@"radius": radius == nil?@"":radius,
};
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_LBS_SEARCHNEARBY param:param success:^(NSString *msg, id data) {
//
[MSLDLog logDebug:@"获取附近的用户: %@", data];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
//
NSString *logStr = [NSString stringWithFormat:@"获取附近的用户失败!code = %ld, msg = %@, data = %@", (long)code, msg, errorData];
[MSLDLog logDebug:@"%@", logStr];
}];</code></pre>
<p><strong> data示例 </strong></p>
<pre><code class="language-objc">{
"playerId": 300799460,
"udid": "4849375rn3034_2922613qr042r6o9q1p",
"gameId": 10389,
"size": 50,
"total": 100,
"contents": [
{
"playerId": 1867749838,
"distance": 14.96,
"position": {
"nation": "中国",
"province": "广东省",
"city": "深圳市",
"country": "龙岗区",
"building": "",
"tag": ""
},
"time": 1574076046
},
{
"playerId": 2411664408,
"distance": 14.94,
"position": {
"nation": "中国",
"province": "广东省",
"city": "深圳市",
"country": "宝安区",
"building": "",
"tag": ""
},
"time": 1574083329
}
]
}</code></pre>
<h5>3. 获取当前位置</h5>
<p><strong>简要描述:</strong></p>
<p>获取当前位置</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取当前位置</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_LBS_CURRENT_LOCATION</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong>
无</p>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">MSLDLocation</td>
<td>成功时,返回的位置对象</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_LBS_CURRENT_LOCATION param:nil success:^(NSString *msg, id data) {
// 成功后,返回的data即为 MSLDLocation 对象
[MSLDLog logDebug:@"获取位置成功! msg:%@, location:[%@]", msg,data];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
[MSLDLog logDebug:@"获取位置失败! msg:%@, errorData:%@", msg,errorData];
}];
</code></pre>
<p><span id="jump_location">MSLDLocation定义</span></p>
<table>
<thead>
<tr>
<th style="text-align: left;">字段名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">latitude</td>
<td style="text-align: left;">double</td>
<td>纬度</td>
</tr>
<tr>
<td style="text-align: left;">longitude</td>
<td style="text-align: left;">double</td>
<td>经度</td>
</tr>
<tr>
<td style="text-align: left;">altitude</td>
<td style="text-align: left;">double</td>
<td>海拔高度信息</td>
</tr>
<tr>
<td style="text-align: left;">speed</td>
<td style="text-align: left;">CGFloat</td>
<td>速度 单位:米/秒</td>
</tr>
<tr>
<td style="text-align: left;">bearing</td>
<td style="text-align: left;">double</td>
<td>方向角信息</td>
</tr>
<tr>
<td style="text-align: left;">formattedAddress</td>
<td style="text-align: left;">NSString</td>
<td>格式化地址</td>
</tr>
<tr>
<td style="text-align: left;">country</td>
<td style="text-align: left;">NSString</td>
<td>国家</td>
</tr>
<tr>
<td style="text-align: left;">province</td>
<td style="text-align: left;">NSString</td>
<td>省/直辖市</td>
</tr>
<tr>
<td style="text-align: left;">city</td>
<td style="text-align: left;">NSString</td>
<td>市</td>
</tr>
<tr>
<td style="text-align: left;">district</td>
<td style="text-align: left;">NSString</td>
<td>区</td>
</tr>
<tr>
<td style="text-align: left;">citycode</td>
<td style="text-align: left;">NSString</td>
<td>城市编码</td>
</tr>
<tr>
<td style="text-align: left;">adcode</td>
<td style="text-align: left;">NSString</td>
<td>区域编码</td>
</tr>
<tr>
<td style="text-align: left;">street</td>
<td style="text-align: left;">NSString</td>
<td>街道名称</td>
</tr>
<tr>
<td style="text-align: left;">number</td>
<td style="text-align: left;">NSString</td>
<td>门牌号</td>
</tr>
<tr>
<td style="text-align: left;">POIName</td>
<td style="text-align: left;">NSString</td>
<td>兴趣点名称</td>
</tr>
<tr>
<td style="text-align: left;">AOIName</td>
<td style="text-align: left;">NSString</td>
<td>所属兴趣点名称</td>
</tr>
</tbody>
</table>
<h4>推送</h4>
<h5>1. 获取推送注册通知的token</h5>
<p><strong>简要描述:</strong>
获取推送注册通知的token。,该方法的调用需要放到 <code>application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken</code> 中,把deviceToken传入。</p>
<p><strong>函数原型:</strong></p>
<pre><code class="language-objc">- (void)msld_application:didRegisterForRemoteNotificationsWithDeviceToken:;</code></pre>
<p><strong>函数参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">application</td>
<td style="text-align: left;">UIApplication</td>
<td>application对象</td>
</tr>
<tr>
<td style="text-align: left;">deviceToken</td>
<td style="text-align: left;">NSData</td>
<td>device token</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
[[MSLDSDK sharedInstance] msld_application:application didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];
}</code></pre>
<h5>2. 处理收到的远程消息通知</h5>
<p><strong>简要描述:</strong>
在收到远程通知时,调用此方法处理。该方法的调用需要放到 <code>- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler</code> 以及<code>- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo</code> 中调用。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取当前位置</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_PUSH_HANDLE_REMOTE_NOTIFICATION</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">userInfo</td>
<td style="text-align: left;">NSDictionary</td>
<td>消息内容</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>无</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
NSLog(@"mspush application didReceiveRemoteNotification fetchCompletionHandler");
if (application.applicationState == UIApplicationStateActive)
{
// 程序当前正处于前台
NSLog(@"mspush application didReceiveRemoteNotification fetchCompletionHandler 前台");
}
else if (application.applicationState == UIApplicationStateInactive)
{
// 程序处于后台进入前台
NSLog(@"mspush application didReceiveRemoteNotification fetchCompletionHandler 后台");
}
// Required, iOS 7 Support
NSDictionary * param = nil;
if (userInfo) {
param = @{@"userInfo":userInfo};
}
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_PUSH_HANDLE_REMOTE_NOTIFICATION param:param success:nil fail:nil];
completionHandler(UIBackgroundFetchResultNewData);
}
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
[MSLDLog logDebug:@"mspush application didReceiveRemoteNotification"];
// Required, For systems with less than or equal to iOS 6
NSDictionary * param = nil;
if (userInfo) {
param = @{@"userInfo":userInfo};
}
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_PUSH_HANDLE_REMOTE_NOTIFICATION param:param success:nil fail:nil];
}</code></pre>
<h5>3. 设置通知的badge数</h5>
<p><strong>简要描述:</strong>
可以调用这个接口,做设置icon上的小红点的动作。如果设置0,则为清除小红点。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取当前位置</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_PUSH_SET_APP_BADGE_NUMBER</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">number</td>
<td style="text-align: left;">NSNumber</td>
<td>要设置的数值,如果是0则是清除小红点</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误时返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>无</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">-(void)applicationWillEnterForeground:(UIApplication *)application {
// 清除小红点,一般已读消息后,清除小红点
NSDictionary * param = @{@"number":@0};
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_PUSH_SET_APP_BADGE_NUMBER param:param success:nil fail:nil];
}</code></pre>
<h5>4. 获取推送注册ID</h5>
<p><strong>简要描述:</strong>
获取推送注册ID</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取推送注册ID</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_PUSH_REGISTRATION_ID</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong>
无</p>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误时返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">NSString</td>
<td>所获取的推送id。</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_PUSH_REGISTRATION_ID param:nil success:^(NSString *msg, id data) {
[MSLDLog logDebug:@"获取注册ID成功! msg:%@, data:[%@]", msg,data];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
[MSLDLog logDebug:@"获取注册ID失败! msg:%@, errorData:%@", msg,errorData];
}];</code></pre>
<h5>5. 设置别名</h5>
<p><strong>简要描述:</strong>
设置别名</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">设置别名</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_PUSH_SET_ALIAS</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">alias</td>
<td style="text-align: left;">NSString</td>
<td>要设置的别名,必传</td>
</tr>
<tr>
<td style="text-align: left;">seq</td>
<td style="text-align: left;">NSString</td>
<td>序列</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误时返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>无</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">-(void)setAlias {
NSMutableDictionary * params = [NSMutableDictionary dictionary];
[params setObject:@"abcAlias" forKey:@"alias"];
[params setObject:@(1) forKey:@"seq"];
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_PUSH_SET_ALIAS param:params success:^(NSString *msg, id data) {
[MSLDLog logDebug:@"设置Alias成功! msg:%@, data:[%@]", msg,data];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
[MSLDLog logDebug:@"设置Alias失败! msg:%@, errorData:%@", msg,errorData];
}];
}</code></pre>
<h4>兑换码</h4>
<h5>1. 展示兑换码界面</h5>
<p><strong>简要描述:</strong>
展示兑换码界面。用户可输入兑换码,点兑换后进行兑换。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">设置别名</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_REDEEM_SHOW_REDEEM_CODE</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong></p>
<p>空</p>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误时返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>兑换成功后的商品id</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">-(void)showRedeemCode {
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_REDEEM_SHOW_REDEEM_CODE param:nil success:^(NSString *msg, id data) {
NSString *infoStr = [NSString stringWithFormat:@"兑换成功! msg:%@, productId:[%@]", msg,data];
[MSLDLog logDebug:infoStr];
[UIAlertView msld_showAlertDialogWithTitle:@"兑换成功" msg:infoStr];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
NSString *infoStr = [NSString stringWithFormat:@"兑换失败! msg:%@, errorData:%@", msg,errorData];
[MSLDLog logDebug:infoStr];
[UIAlertView msld_showAlertDialogWithTitle:@"兑换失败" msg:infoStr];
}];
}
</code></pre>
<h5>2. 兑换兑换码(无UI)</h5>
<p><strong>简要描述:</strong>
兑换兑换码。这个是无UI的接口,需要游戏方实现自己的UI让用户输入。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">设置别名</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_REDEEM_NOUI_REDEEM_CODE</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">redeemCode</td>
<td style="text-align: left;">String</td>
<td>兑换码字符串</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误时返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>兑换成功后的商品id</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> NSMutableDictionary * params = [NSMutableDictionary dictionary];
[params setObject:redeemCode forKey:@"redeemCode"];
MSLDMBProgressHUD *hud = [MSLDMBProgressHUD showHUDAddedTo:self.view animated:YES];
[hud showAnimated:YES];
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_REDEEM_NOUI_REDEEM_CODE param:params success:^(NSString *msg, id data) {
[hud hideAnimated:YES];
NSString *infoStr = [NSString stringWithFormat:@"兑换成功! msg:%@, productId:[%@]", msg,data];
[MSLDLog logDebug:infoStr];
[UIAlertView msld_showAlertDialogWithTitle:@"兑换成功" msg:infoStr];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
[hud hideAnimated:YES];
NSString *infoStr = [NSString stringWithFormat:@"兑换失败! msg:%@, errorData:%@", msg,errorData];
[MSLDLog logDebug:infoStr];
[UIAlertView msld_showAlertDialogWithTitle:@"兑换失败" msg:infoStr];
}];
</code></pre>
<h4>好友关系链</h4>
<h5>1. 获取通讯录权限</h5>
<p><strong>简要描述:</strong>
获取通讯录权限.</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取通讯录权限</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_CONTACT_PERMISSIONS</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">IS_SHOW_CONFIRM_DIALOG</td>
<td style="text-align: left;">String</td>
<td>是否拒绝后再次提示,"0":不提示 "1":提示。</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误时返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>无</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">
// 获取通讯录权限(拒绝后下次无提示弹窗)
- (void)getAddressBookPermisssions{
NSMutableDictionary *dic = [NSMutableDictionary new];
[dic setValue:@"0" forKey:@"IS_SHOW_CONFIRM_DIALOG"];
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_CONTACT_PERMISSIONS param:dic success:^(NSString *msg, id data) {
NSString *logStr = [NSString stringWithFormat:@"获取通讯录权限成功: msg = %@, data = %@", msg, data];
[MSLDLog logDebug:@"%@", logStr];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
NSString *logStr = [NSString stringWithFormat:@"获取通讯录权限失败: msg = %@, data = %@", msg, errorData];
[MSLDLog logDebug:@"%@", logStr];
}];
}
// 获取通讯录权限(拒绝后下次有提示弹窗)
- (void)getAddressBookPermisssionsShowConfirmDialog{
NSMutableDictionary *dic = [NSMutableDictionary new];
[dic setValue:@"1" forKey:@"IS_SHOW_CONFIRM_DIALOG"];
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_CONTACT_PERMISSIONS param:dic success:^(NSString *msg, id data) {
NSString *logStr = [NSString stringWithFormat:@"获取通讯录权限成功: msg = %@, data = %@", msg, data];
[MSLDLog logDebug:@"%@", logStr];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
NSString *logStr = [NSString stringWithFormat:@"获取通讯录权限失败: msg = %@, data = %@", msg, errorData];
[MSLDLog logDebug:@"%@", logStr];
}];
}
</code></pre>
<h5>2. 获取平台级联系人列表</h5>
<p><strong>简要描述:</strong>
获取平台级联系人列表</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取平台级联系人列表</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_CONTACT_PLATFORM_FRIENDLIST</td>
<td style="text-align: left;">无</td>
</tr>
</tbody>
</table>
<p><strong>参数说明:</strong></p>
<p>空</p>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>错误时返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>联系人列表对象</td>
</tr>
</tbody>
</table>
<p><strong> data示例 </strong></p>
<pre><code>{
gameId = 10255;
platformRelations = (
{
friendUserId = 3900806038;
name = Huuuu;
playerId = 300799106;
relation = 2;
source = contact;
}
);
playerId = 3900806059;
userId = 300800769;
}
</code></pre>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">// 获取关系链平台级联系人列表
- (void)getContactsPlatformList{
NSMutableDictionary *dic = [NSMutableDictionary new];
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_CONTACT_PLATFORM_FRIENDLIST param:dic success:^(NSString *msg, id data) {
NSString *logStr = [NSString stringWithFormat:@"关系链平台级联系人列表成功: msg = %@, data = %@", msg, data];
[MSLDLog logDebug:@"%@", logStr];
[ContactsPlatformListView isShowContactsPlatformListViewWithData:data];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
NSString *logStr = [NSString stringWithFormat:@"获取关系链平台级联系人列表失败: msg = %@, data = %@", msg, errorData];
[MSLDLog logDebug:@"%@", logStr];
}];
}
</code></pre>
<h4>政策限制</h4>
<h5>1. 查询剩余游戏时间</h5>
<p><strong>简要描述:</strong>
查询当前账号距离业务控制台所配置的政策限制下剩余的游戏时间。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">实名认证</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_GOVPOLICY_REMAINDER_TIME</td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td>-</td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<p>获取成功时,data值为NSDictionary,其中</p>
<table>
<thead>
<tr>
<th style="text-align: left;">key值</th>
<th style="text-align: left;">value值类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">remainderPlayTime</td>
<td style="text-align: left;">NSNumber</td>
<td>剩余可用的游戏时间,-1=无限制,0=已到限制时间</td>
</tr>
<tr>
<td style="text-align: left;">limitStatus</td>
<td style="text-align: left;">NSString</td>
<td>限制状态(后台配置,0=关闭,1=强,2=弱)</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">[[MSLDSDK sharedInstance] actionWithLDUrl: ROUTE_GOVPOLICY_REMAINDER_TIME param:nil success:^(NSString *msg, id data) {
// 获取剩余游戏时间成功
MSLDLOG(@"auth success! msg: %@, data :%@",msg, data);
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
// 获取剩余游戏时间失败
MSLDLOG(@"auth fail! code %li msg: %@, data :%@", (long)code, msg, errorData);
}];</code></pre>
<h4>海外版本接口(哥伦布系统)</h4>
<h5>1. Apple登录</h5>
<p><strong>简要描述:</strong></p>
<p>调用起Apple系统提供的登录授权页面,在拿到系统授权后,使用授权信息进行登录</p>
<p><strong>注意:</strong>
该功能在iOS13及其以上版本系统才能支持。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">苹果登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_COLUMBUS_ACCOUNT_DIRECT_APPLE_LOGIN</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> [[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_COLUMBUS_ACCOUNT_DIRECT_APPLE_LOGIN param:nil success:^(NSString *msg, id data) {
MSLDAccount *account = data;
// 苹果登录成功
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
// 苹果登录失败
}];</code></pre>
<h5>2. Google登录</h5>
<p><strong>简要描述:</strong></p>
<p>在应用内调用起Google的网页授权弹窗页面,在拿到Google授权token后,使用授权信息进行登录</p>
<p><strong>注意:</strong>
使用该功能需要在项目的配置中新增URL Schemes 配置详见<a href="https://developers.google.cn/identity/sign-in/ios/start?hl=zh-tw&ver=objc">Google 登录接入文档 Set the callback URL type</a>。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">Google登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_COLUMBUS_ACCOUNT_DIRECT_GOOGLE_LOGIN</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_COLUMBUS_ACCOUNT_DIRECT_GOOGLE_LOGIN param:nil success:^(NSString *msg, id data) {
MSLDAccount *account = data;
//Google登录成功
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
//Google登录失败
}];</code></pre>
<h5>3. Facebook登录</h5>
<p><strong>简要描述:</strong></p>
<p>在应用内调用起Facebook的网页授权弹窗页面,并尝试拉起Facebook原生APP进行登录授权,在拿到Facebook授权token后,使用授权信息进行登录</p>
<p><strong>注意:</strong>
使用该功能需要在项目的plist文件中新增配置详见 <a href="https://developers.facebook.com/docs/ios/getting-started/?sdk=fbsdk">Facebook接入文档 Step 3: Configure Info.plist </a> 。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">Facebook登录</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_COLUMBUS_ACCOUNT_DIRECT_FACEBOOK_LOGIN</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;"><a href="#jump_account">MSLDAccount</a></td>
<td>登录成功的用户信息</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_COLUMBUS_ACCOUNT_DIRECT_FACEBOOK_LOGIN param:nil success:^(NSString *msg, id data) {
MSLDAccount *account = data;
//Facebook登录成功
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
//Facebook登录失败
}];</code></pre>
<h4>Facebook分享(哥伦布系统)</h4>
<h5>1. Facebook分享图片</h5>
<p><strong>简要描述:</strong></p>
<p>首先尝试调起Facebook原生app分享图片,若原生无法拉起或者用户未安装Facebook原生app则在应用内调用Facebook网页分享图片。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">分享图片</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_SHARE_IMAGE</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">image</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">UIImage类型或图片的NSData</td>
<td>分享的图片对象</td>
</tr>
<tr>
<td style="text-align: left;">hashtag</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>话题标签</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_FACEBOOK</td>
<td style="text-align: left;">NSString</td>
<td>分享到Facebook</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">UIImage *image = [UIImage imageNamed:@"bg_launcher"];
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_SHARE_IMAGE param:@{ SHARE_SCENE: SHARE_FACEBOOK, @"image": image , @"hashtag": @"#ConnectTheWorld"} success:^(NSString *msg, id data) {
// Facebook分享图片成功
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
//Facebook分享图片失败
}];</code></pre>
<h5>2. Facebook分享链接</h5>
<p><strong>简要描述:</strong></p>
<p>首先尝试调起Facebook原生app分享链接,若原生无法拉起或者用户未安装Facebook原生app则在应用内调用Facebook网页分享链接。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">分享链接</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;"><a href="https://www.showdoc.cc/mssdk?page_id=2630193199516192">ROUTE_SHARE_WEBPAGE</a></td>
<td style="text-align: left;">-</td>
</tr>
</tbody>
</table>
<p><strong>参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">是否必传</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_SCENE</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>分享场景,详见下表</td>
</tr>
<tr>
<td style="text-align: left;">webpageUrl</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">NSString</td>
<td>分享的链接地址</td>
</tr>
<tr>
<td style="text-align: left;">hashtag</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">NSString</td>
<td>话题标签</td>
</tr>
</tbody>
</table>
<p><strong>分享场景说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">SHARE_WECHAT_SESSION</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信会话</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_WECHAT_TIMELINE</td>
<td style="text-align: left;">NSString</td>
<td>分享到微信朋友圈</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_FRIENDS</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ好友</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_QQ_QZONE</td>
<td style="text-align: left;">NSString</td>
<td>分享到QQ空间</td>
</tr>
<tr>
<td style="text-align: left;">SHARE_FACEBOOK</td>
<td style="text-align: left;">NSString</td>
<td>分享到Facebook</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>返回对象</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code class="language-objc">NSString *webpageUrl = @"https://developers.facebook.com";
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_SHARE_WEBPAGE param:@{ SHARE_SCENE: SHARE_FACEBOOK, @"webpageUrl": webpageUrl, @"hashtag": @"#ConnectTheWorld"} success:^(NSString *msg, id data) {
//Facebook分享链接成功
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
// Facebook分享链接失败
}];</code></pre>
<h5>OpenInstall</h5>
<p>集成OpenInstall,可以实现获取App每一次安装的分享(或推广)来源的功能。</p>
<h6>1. 获取安装参数</h6>
<p><strong>简要描述:</strong></p>
<p>调用此接口,可以获取当前APP的安装参数。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取安装参数</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">ROUTE_OPENINSTALL_GET_INSTALL_PARMS</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-objc">typedef void(^MSLDSDKSuccess)(NSString *msg, id data);
typedef void(^MSLDSDKFail)(MSLDErrorCode code, NSString *msg, id errorData);</code></pre>
<p><strong>回调参数说明:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">MSLDErrorCode</td>
<td><a href="https://www.showdoc.cc/mssdk?page_id=2629915269319032">错误码</a></td>
</tr>
<tr>
<td style="text-align: left;">msg</td>
<td style="text-align: left;">NSString</td>
<td>状态详情</td>
</tr>
<tr>
<td style="text-align: left;">errorData</td>
<td style="text-align: left;">id</td>
<td>失败时返回对象,当前为nil</td>
</tr>
<tr>
<td style="text-align: left;">data</td>
<td style="text-align: left;">MSLDOpenInstallData</td>
<td>返回的 <a href="#jump_openinstalldata">MSLDOpenInstallData</a> 对象</td>
</tr>
</tbody>
</table>
<p><strong>示例:</strong></p>
<pre><code>[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_OPENINSTALL_GET_INSTALL_PARMS param:nil success:^(NSString *msg, id data) {
NSString *infoStr = [NSString stringWithFormat:@"获取OpenInstall参数成功! msg:%@, data:[%@]", msg,data];
[MSLDLog logDebug:infoStr];
} fail:^(MSLDErrorCode code, NSString *msg, id errorData) {
NSString *infoStr = [NSString stringWithFormat:@"获取OpenInstall参数失败! msg:%@, errorData:%@", msg,errorData];
[MSLDLog logDebug:infoStr];
}];</code></pre>
<h6>2. 上报注册数据</h6>
<p><strong>简要描述:</strong></p>
<p>在业务实际注册完成的时候,向OpenInstall上报注册成功的数据。之后可以在OpenInstall的后台看到注册的统计。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取用户信息</td>
<td style="text-align: left;">同步调用</td>
<td style="text-align: left;">ROUTE_OPENINSTALL_REPORT_REGISTER</td>
<td style="text-align: left;">空</td>
</tr>
</tbody>
</table>
<p><strong>返回值说明:</strong>
无返回值。</p>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> [[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_OPENINSTALL_REPORT_REGISTER param:nil success:nil fail:nil];
</code></pre>
<h6>3. 上报效果点数据</h6>
<p><strong>简要描述:</strong></p>
<p>效果点主要用来统计终端用户对某些特殊业务的使用效果,如充值金额,分享次数等等。
CP需要先在OpenInstall后台配置相应的效果点,然后在代码中相应的位置调用此接口,上报数据。</p>
<p><strong>功能说明:</strong></p>
<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>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">上报效果点数据</td>
<td style="text-align: left;">同步调用</td>
<td style="text-align: left;">ROUTE_OPENINSTALL_REPORT_EFFECT_POINT</td>
<td style="text-align: left;">空</td>
</tr>
</tbody>
</table>
<p><strong>返回值说明:</strong>
无返回值。</p>
<p><strong>示例:</strong></p>
<pre><code class="language-objc"> NSDictionary * param = @{@"effectID":@"effect_test",@"effectValue":@(1)};
[[MSLDSDK sharedInstance] actionWithLDUrl:ROUTE_OPENINSTALL_REPORT_EFFECT_POINT param:param success:nil fail:nil];
</code></pre>