MSSDK

SDK 文档


Android 老游戏接入相关

<h4>1 用户是否已经购买过该道具</h4> <h5>1.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;">PaymentPath.ROUTE_IS_PRODUCTS_PAID</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;">String</td> <td>用户ID</td> </tr> <tr> <td style="text-align: left;">productId</td> <td style="text-align: left;">是</td> <td style="text-align: left;">String</td> <td>道具标识</td> </tr> </tbody> </table> <p><strong>示例</strong></p> <pre><code> HashMap params = new HashMap&lt;String, Object&gt;(); params.put("playerId", "playerId"); params.put("productId" "productId"); MSLDSDK.action(activity,PaymentPath.ROUTE_IS_PRODUCTS_PAID, params, new MSLDCallback() { @Override public void onSuccess(String msg, @Nullable Object data) { //执行成功回调返回data(0:未购买 1:已购买) } @Override public void onFail(int code ,String msg, @Nullable Object 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;">int</td> <td>错误码</td> </tr> <tr> <td style="text-align: left;">msg</td> <td style="text-align: left;">String</td> <td>状态详情</td> </tr> <tr> <td style="text-align: left;">errorData</td> <td style="text-align: left;">Object</td> <td>返回对象</td> </tr> <tr> <td style="text-align: left;">data</td> <td style="text-align: left;">String</td> <td>0:未购买 1:已购买</td> </tr> </tbody> </table> <h5>1.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;">PaymentPath.ROUTE_IS_PRODUCTS_PAID_OLD</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;">String</td> <td>用户ID</td> </tr> <tr> <td style="text-align: left;">productId</td> <td style="text-align: left;">是</td> <td style="text-align: left;">String</td> <td>道具标识</td> </tr> <tr> <td style="text-align: left;">keyName</td> <td style="text-align: left;">是</td> <td style="text-align: left;">String</td> <td>存档标识</td> </tr> </tbody> </table> <p><strong>示例</strong></p> <pre><code> HashMap params = new HashMap&lt;String, Object&gt;(); params.put("playerId", "playerId"); params.put("productId" "productId"); params.put("keyName" "keyName"); MSLDSDK.action(activity,PaymentPath.ROUTE_IS_PRODUCTS_PAID_OLD, params, new MSLDCallback() { @Override public void onSuccess(String msg, @Nullable Object data) { //执行成功回调返回data(0:未购买 1:已购买) } @Override public void onFail(int code ,String msg, @Nullable Object 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;">int</td> <td>错误码</td> </tr> <tr> <td style="text-align: left;">msg</td> <td style="text-align: left;">String</td> <td>状态详情</td> </tr> <tr> <td style="text-align: left;">errorData</td> <td style="text-align: left;">Object</td> <td>返回对象</td> </tr> <tr> <td style="text-align: left;">data</td> <td style="text-align: left;">String</td> <td>0:未购买 1:已购买</td> </tr> </tbody> </table> <h4>2 用户已购买道具列表</h4> <h5>1.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;">PaymentPath.ROUTE_GET_PRODUCT_LIST</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;">String</td> <td>用户ID</td> </tr> </tbody> </table> <p><strong>示例</strong></p> <pre><code> HashMap params = new HashMap&lt;String, Object&gt;(); params.put("playerId", "playerId"); MSLDSDK.action(activity,PaymentPath.ROUTE_GET_PRODUCT_LIST, params, new MSLDCallback() { @Override public void onSuccess(String msg, @Nullable Object data) { } @Override public void onFail(int code ,String msg, @Nullable Object 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;">int</td> <td>错误码</td> </tr> <tr> <td style="text-align: left;">msg</td> <td style="text-align: left;">String</td> <td>状态详情</td> </tr> <tr> <td style="text-align: left;">errorData</td> <td style="text-align: left;">Object</td> <td>返回对象</td> </tr> <tr> <td style="text-align: left;">data</td> <td style="text-align: left;">List</td> <td>道具列表</td> </tr> </tbody> </table> <h4>3 设备查询PID</h4> <p><strong>简要描述:</strong> </p> <ul> <li>已经接入了中台SDK(统一帐号+MSSDK)的手机绑定功能的业务,在政策的要求下,由乐逗的游客登录转变成使用渠道账号登录。在此过程中,由于该游客之前已经绑定了手机号存在PID1,此时用渠道账号注册登录后又生成一个新的PID2,导致用户感知数据丢失,影响非常不好。</li> <li>老业务由其他SDK迁移到微服务SDK,微服务SDK支持根据设备号查询绑定过的PID</li> </ul> <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;">查询PID列表</td> <td style="text-align: left;">异步调用</td> <td style="text-align: left;">AccountPath.ROUTE_USER_PLAYER_ID_LIST</td> <td>无</td> </tr> </tbody> </table> <p><strong>回调声明:</strong> </p> <pre><code>interface MSLDCallback{ void onSuccess(String msg, Object data); void onFail(int code, String msg, Object 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;">int</td> <td>错误码</td> </tr> <tr> <td style="text-align: left;">data</td> <td style="text-align: left;">Object</td> <td>回调数据</td> </tr> <tr> <td style="text-align: left;">msg</td> <td style="text-align: left;">String</td> <td>状态详情</td> </tr> <tr> <td style="text-align: left;">errorData</td> <td style="text-align: left;">Object</td> <td>错误数据,可能为空</td> </tr> </tbody> </table> <p><strong>示例</strong></p> <pre><code>MSLDSDK.action(activity, AccountPath.ROUTE_USER_PLAYER_ID_LIST, null, new MSLDCallback() { @Override public void onSuccess(String msg, @Nullable Object data) { Log.i(TAG, "getPidList() ==&gt; success : " + data); tvResult.setText("suc:"+data.toString()); } @Override public void onFail(int code, String msg, @Nullable Object data) { Log.i(TAG, "getPidList() ==&gt; onFail " + code + ": " + msg); tvResult.setText("fail:"+code + " - " +msg); } });</code></pre> <p>data示例</p> <pre><code>[ { "player_id": "300800404", "last_login_time": "1575621748", "is_bind_phone": "1" }, { "player_id": "300867543", "last_login_time": "1578662240", "is_bind_phone": "1" }, { "player_id": "300867544", "last_login_time": "1578981828", "is_bind_phone": "1" } ]</code></pre>

页面列表

ITEM_HTML