GTaSDK 主要为游戏发行海外地区(港澳台除外)提供登录功能。
接口描述:获取用户账号是否绑定的信息以及 token 值。
注意:选择是否需要遮罩,在 true 时,调用该接口在界面上会有 loading 框,直到获取成功或失败,loading 框才会消失。
接口调用:
Dictionary<string, object> params = new Dictionary<string, object>();
params.Add("isMask", true); // accountInfo 参数 isMask:true/false 是否需要 loading 框
SuperSDK.getInstance().Invoke("platform", "accountInfoJson", params);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("accountInfoJson"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName : platform,
funcName : accountInfoJson,
result : {
code : 1/0/xxx, // 1 获取成功,0 获取失败,xxx 其他错误码 没有可忽略
msg : xxx,
data : {// 1 是已绑定,其他否
"gta" : 1,// 是否绑定了 gta 账号
"facebook" : 1,// 是否绑定了
"twitter" : 1,// 是否绑定了 twitter 账号
"google" : 1,// 是否绑定了 google 账号
"gamecenter" : 1,// 是否绑定了 gamecenter 账号
"token" : xxx// 当前登录的 token 值
}
}
接口描述:根据 bindType 的对应的 value 值来跳转不同的绑定界面,绑定类型有 GTA、Facebook、Google。
接口调用:
Dictionary<string, object> params = new Dictionary<string, object>();
params.Add("bindType", "GTA"); // showAccountLink 参数 bindType 取值为 GTA、Facebook、Google
SuperSDK.getInstance().Invoke("platform", "showAccountLinkJson", params);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("showAccountLinkJson"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName : platform,
funcName : showAccountLinkJson,
result : {
code : 1/0/xxx,// 1 成功,0 失败,xxx 其他错误, code 没有可忽略
msg : xxx,
data : GTA 、 Facebook 、 Twitter 、Google // 绑定账号的类型
}
接口描述:获取某用户在 facebook 中的用户 ID 号。
接口调用:
SuperSDK.getInstance().Invoke("platform", "getfbid", null);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("getfbid"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName : platform,
funcName : getfbid,
result : {
code : 1/0/xxx, 1 获取成功,0 没有使用 FB 登录或 FB 登录失败,xxx 其他错误 code 没有可忽略
msg : xxx,
data : fbid // code = 1 可以获取到 fbid,失败获取不到
}
接口描述:查询当前用户是否已绑定邮箱。
接口调用:
SuperSDK.getInstance().Invoke("platform", "queryBindEmail", null);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("queryBindEmail"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName : platform,
funcName : queryBindEmail,
result : {
code : 1/0/xxx,// 1 已绑定,0 未绑定,xxx 其他查询失败 code,没有可忽略
msg : xxx,
data : email // code = 1 可以获取此值
}
接口描述:查询 GTa 用户的用户名。
接口调用:
SuperSDK.getInstance().Invoke("platform", "queryGTaUserName", null);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("queryGTaUserName"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName : platform,
funcName : queryGTaUserName,
result : {
code : 1/0/xxx, // 1 成功,xxx 其他查询失败 code,没有可忽略
msg : "success",
data : "1003265311@qq.com" // code = 1 可以获取此值
}
接口描述:打开绑定邮箱页面让用户绑定密保邮箱。
接口调用:
SuperSDK.getInstance().Invoke("platform", "showBindEmail", null);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("showBindEmail"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName : platform,
funcName : showBindEmail,
result : {
code : 1/0/xxx,// 1 绑定成功,0 绑定失败,xxx 其他错误, code 没有可忽略
msg : xxx,
data : email// code = 1 可以获取此值
}
接口描述:传入 GTa 语言参数可更换 GTa 和客服语言。
接口调用:
Dictionary<string, object> params = new Dictionary<string, object>();
params.Add("languagePath","zh_cn"); // 参数 languagePath 取值为语言标识符,比如:zh_cn、zh、en、de 等
SuperSDK.getInstance().Invoke("platform","setLanguagePath", params);
参数 支持以下几种语言(16种):
语言标识符 | 语言描述 |
---|---|
ar | 阿拉伯语 |
de | 德语 |
en | 英语 |
es | 西班牙语 |
fr | 法语 |
in | 印尼语 |
ja | 日文 |
ko | 韩语 |
pl | 波兰语 |
pt | 葡萄牙语 |
ru | 俄语 |
th | 泰语 |
tr | 土耳其语 |
zh | 中文繁体 |
zh_cn | 中文简体 |
vi | 越南语 |
接口描述:游客单登录接口,自动创建并登录游客,不弹出游客登录框(静默登录)。
注意:该接口适用于 SuperSDK 母包。
接口调用:
SuperSDK.getInstance().Invoke("platform", "GuestSingleLogin", null);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("GuestSingleLogin"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName:platform
funcName:GuestSingleLogin
result:{
"code":1,
"data":{
"msg":"登录成功",
"osdk_ticket":"eyJvc2RrX2dhbWVfaWQiOiIxOTYzNzc4NDQiLCJ1c2VyX2lkIjoiMTY3MDQ5MjUyOTE3MjIyNDUyNTYyODg5NSIsImxvZ2luX3Nka19uYW1lIjoiZ3RhcmNhZGUiLCJjaGFubmVsX2lkIjoiMCIsImV4dGVuZCI6IjIxNzN8NDA4fDE3NDciLCJhY2NvdW50X3N5c3RlbV9pZCI6IjAwNjAwMTUiLCJvc2RrX3VzZXJfaWQiOiIwMDYwMDE1XzE2NzA0OTI1MjkxNzIyMjQ1MjU2Mjg4OTUiLCJpcCI6IjQ1LjQwLjYwLjIxNyIsImNvdW50cnkiOiJVUyIsInRpbWUiOjE2NzA0OTQ2MjIsInNpZ24iOiJiMmE4YThjMjVmMTM1ZjM1YjA1MThhMTM3YzBhNGY3ZiJ9",
"status":1,
"userinfo":{
"login_sdk_name":"gtarcade",
"user_id":"1670492529172224525628895"
}
},
"msg":"GuestSingleLogin success"
}
接口描述:游客升级接口。
注意:该接口只有升级成功时有回调。
接口调用:
SuperSDK.getInstance().Invoke("platform", "guestUpgrade", null);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("guestUpgrade"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName:platform
funcName:guestUpgrade
result:{
code : 1,// 1 成功,xxx 其他错误, code 没有可忽略
msg : "GuestUpgrade Success"
}
接口描述:可选择第三方登录方式。
登录方式:GTALogin、FacebookLogin、GoogleLogin。
接口调用:
Dictionary<string, object> params = new Dictionary<string, object>();
params.Add("otherFuncName", "GoogleLogin"); // GTALogin、FacebookLogin、GoogleLogin
SuperSDK.getInstance().Invoke("platform", "otherFunction", params);
说明:参考 海外拓展接口
接口描述:打开用户隐私协议。
注意:只支持日本地区。
接口调用:
Dictionary<string, object> params = new Dictionary<string, object>();
params.Add("type", "JP");// 用户隐私地区(必须)。如:GDPR:gta 通用协议 JP: 日本
SuperSDK.getInstance().Invoke("platform", "openUserAgreement", params);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("openUserAgreement"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName:platform
funcName:openUserAgreement
result:{
"code":1, // 1/xxx, 1 表示已经同意用户隐私,xxx 表示未同意用户隐私
"msg":"已经同意用户隐私",
"data":"JP"
}
注意:该接口仅支持Android,目前暂时只支持日本地区,日本地区的游戏在每次充值前都需要调用该接口。
接口调用:
Dictionary<string, object> params = new Dictionary<string, object>();
params.Add("country", "JP"); // 传入限制的国家(目前暂时只支持日本) 必须。如:JP
params.Add("amount", "120"); // 传入充值金额(需要和打包工具上配置的一样,日本规定只能使用日元) 必须
SuperSDK.getInstance().Invoke("platform", "payCompliance", params);
接口回调:
public void OnCallBack(string moduleName, string funcName, string result)
{
Debug.Log("moduleName:" + moduleName);
Debug.Log("funcName:" + funcName);
Debug.Log("result:" + result);
JsonData resultData = JsonMapper.ToObject(result);
if (moduleName.Equals("platform"))
{
if (funcName.Equals("payCompliance"))
{
JsonData resultData = JsonMapper.ToObject(result);
int code = (int)resultData["code"];
// string msg = JsonMapper.ToJson(resultData["data"]);
if (code == SuperSDKConstants.SUCCESS)
{
// 操作成功
}
else
{
// 操作失败
}
}
}
}
日志打印:
moduleName:platform
funcName:payCompliance
result:{
"code":1, // 1/xxx, 1 表示可以充值, xxx 表示不可以充值
"msg":"日分充值限制返回 Success, code = 0, msg = 可以充值"
}