Android new API
<h3>25. 获取第三方用户信息(现仅支持微信)</h3>
<p><strong>简要描述:</strong></p>
<p>获取第三方用户信息, 第三方授权成功后会返回MSLDThirdUserInfo对象</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>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取第三方用户信息</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">AccountPath.ROUTE_ACCOUNT_DIRECT_THIRD_PARTY_USER_INFO</td>
<td>无</td>
</tr>
</tbody>
</table>
<p><strong>方法参数 map 说明:</strong></p>
<table>
<thead>
<tr>
<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;">type</td>
<td style="text-align: left;">String</td>
<td style="text-align: left;">三方类型:Hwx</td>
</tr>
</tbody>
</table>
<p><strong>返回值说明:</strong></p>
<p>MSLDThirdPartyUserInfo定义</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;">openId</td>
<td style="text-align: left;">String</td>
<td>三方的Open Id</td>
</tr>
<tr>
<td style="text-align: left;">unionid</td>
<td style="text-align: left;">String</td>
<td>三方的Union Id</td>
</tr>
<tr>
<td style="text-align: left;">nickname</td>
<td style="text-align: left;">String</td>
<td>三方的昵称</td>
</tr>
<tr>
<td style="text-align: left;">image</td>
<td style="text-align: left;">String</td>
<td>三方的头像</td>
</tr>
<tr>
<td style="text-align: left;">extend</td>
<td style="text-align: left;">HashMap</td>
<td>三方的其他信息;根据三方平台不同而不同;</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-java">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>回调数据,MSLDThirdUserInfo类型,包含授权后的昵称和头像</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 class="language-java">MSLDSDK.action(activity, AccountPath.ROUTE_ACCOUNT_DIRECT_THIRD_PARTY_USER_INFO,
new HashMap<String, Object>(){
{
put("type", "Hwx");
}
}, new MSLDCallback<MSLDThirdUserInfo>() {
@Override
public void onSuccess(String msg, @Nullable MSLDThirdUserInfo data) {
Log.i(TAG, " ==> success : " + data);
tvWechatInfo.setText("wechat openid:" + data.getOpenId());
}
@Override
public void onFail(int code, String msg, @Nullable Object errorData) {
Log.i(TAG, "==> onFail " +code +": "+msg);
if (ErrCode.ERROR_UNKNOWN_ERROR == code){
ToastUtils.showShort(msg);
}
}
});</code></pre>
<h3>26. 获取用户区域位置</h3>
<p><strong>简要描述:</strong></p>
<p>获取用户区域位置, 成功后会返回MSLDRegionLocation对象</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>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">获取用户区域位置</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">AccountPath.ROUTE_ACCOUNT_DIRECT_USER_REGION_LOCATION</td>
<td>无</td>
</tr>
</tbody>
</table>
<p><strong>方法参数 map 说明:</strong></p>
<table>
<thead>
<tr>
<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;">type</td>
<td style="text-align: left;">String</td>
<td style="text-align: left;">register: 获取注册时区域位置信息(默认);current:获取当前时区域位置信息</td>
</tr>
</tbody>
</table>
<p><strong>返回值 map 说明:</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;">cityName</td>
<td style="text-align: left;">String</td>
<td>城市名称</td>
</tr>
<tr>
<td style="text-align: left;">countryCode</td>
<td style="text-align: left;">String</td>
<td>国家编码</td>
</tr>
<tr>
<td style="text-align: left;">countryName</td>
<td style="text-align: left;">String</td>
<td>国家名称</td>
</tr>
<tr>
<td style="text-align: left;">ipAddress</td>
<td style="text-align: left;">String</td>
<td>ip地址</td>
</tr>
<tr>
<td style="text-align: left;">ipNumber</td>
<td style="text-align: left;">String</td>
<td>ipNumber</td>
</tr>
<tr>
<td style="text-align: left;">ipVersion</td>
<td style="text-align: left;">String</td>
<td>ip协议版本</td>
</tr>
<tr>
<td style="text-align: left;">latitude</td>
<td style="text-align: left;">String</td>
<td>纬度</td>
</tr>
<tr>
<td style="text-align: left;">longtitude</td>
<td style="text-align: left;">String</td>
<td>经度</td>
</tr>
<tr>
<td style="text-align: left;">regionName</td>
<td style="text-align: left;">String</td>
<td>地区名称(省,州名称)</td>
</tr>
<tr>
<td style="text-align: left;">timeZone</td>
<td style="text-align: left;">String</td>
<td>时区</td>
</tr>
<tr>
<td style="text-align: left;">zipCode</td>
<td style="text-align: left;">String</td>
<td>邮政编码</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-java">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>回调数据,MSLDRegionLocation类型</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 class="language-java"> HashMap map = new HashMap(1);
map.put("type", type);
MSLDSDK.action(activity, AccountPath.ROUTE_ACCOUNT_DIRECT_USER_REGION_LOCATION, map,
new MSLDCallback() {
@Override
public void onSuccess(String msg, @Nullable Object data) {
HashMap<String, Object> result = (HashMap<String, Object>) data;
String country = (String) result.get("countryName");
String cityName = (String) result.get("cityName");
String regionName = (String) result.get("regionName");
showMsg("国家:"+country + ",城市:"+cityName + ",区域:"+regionName);
MSLog.d(TAG, "all: "+result.toString());
}
@Override
public void onFail(int code, String msg, @Nullable Object errorData) {
showMsg("获取区域位置失败:" + msg+",code:"+code);
}
});</code></pre>
<h3>27. 展示协议确认界面</h3>
<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>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">展示协议确认界面</td>
<td style="text-align: left;">异步调用</td>
<td style="text-align: left;">AccountPath.ROUTE_SHOW_PROTOCOL_CONFIRM_VIEW</td>
<td>无</td>
</tr>
</tbody>
</table>
<p><strong>回调声明:</strong></p>
<pre><code class="language-java">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 class="language-java"> MSLDSDK.action(activity, AccountPath.ROUTE_SHOW_PROTOCOL_CONFIRM_VIEW, null, new MSLDCallback() {
@Override
public void onSuccess(String s, @Nullable Object o) {
showMsg(s);
}
@Override
public void onFail(int i, String s, @Nullable Object o) {
showMsg(s);
}
});</code></pre>