海外PC版SDK Unity引擎接入说明

1.文档说明

1.1 功能描述

此文档主要是为使用Unity环境的开发者提供PC端的SDK,开发者接入后可以直接导出exe包使用。

1.2 阅读对象

游戏客户端开发者

2.接入准备(导入SDK资源)

服务端配置:请参考 通用接入文档->《SDK服务端接入说明文档》

2.1 导入方式

打开unity 在Assets ->Import Package ->Custom Package… 选择ACEGlobalPCSDK.unitypackage 点击【import】导入文件导入package包 或者在【Project】面板下空白区域鼠标右键->【Import Package】->【custom Package】选择导入 或者直接找到需要导入的包文件,直接拖拽到【Project】面板下
如果导入unitypackage有资源缺失 也可以直接复制提供的demo工程里面的相关代码和资源到游戏工程中。

2.2 资源目录结构介绍

pc目录结构
demo里面包含场景和示例代码
BestHTTP、LitJson、WPMIDGameSDKscript、WPMIDBaseSDK、WPMIDBrowser是需要引用的库文件和SDK包含的相关代码。
Plugins 里面包含了一些需要用到的dll文件
Resources 里面包含了sdk需要用到的本地弹窗提示UI Prefabs和PC端显示内嵌webview所需的Prefabs
StreamingAssets里面包含了sdk需要的配置文件。

3.特别说明

WPMIDGameSDKscript 下面的WPGameSDK和WPGameSDKListener
WPGameSDK里面包含了主动调用设置监听、初始化、
、登录、注销、切换账号、用户中心、礼包码、支付、角色信息设置以及其他接口等。
WPGameSDKListener 是监听返回的相应回调接口。

3.1 注意事项

具体接入方式可参照Assets->demo-> EventHandle.cs
回调
游戏须自定义类继承 WPGameSDKListener 实现callback接口 回调接口会包含游戏用到的参数信息 游戏可以使用该参数 发起登录验证等相关逻辑操作。
接口调用示例:

  1. WPGameSDK.getInstance().XXX

回调接口示例:

  1. public override void XXX()
  2. {
  3. throw new System.NotImplementedException();
  4. }

4.接口介绍

4.0 设置SDK接收回调gameObject【必接】

4.0.1 接口定义

  1. /// <summary>
  2. /// 设置回调监听的gameobject
  3. /// </summary>
  4. /// <param name="listener">实现WPGameSDKListener的类</param>
  5. public void setListener(WPGameSDKListener listener)

4.0.2 重要说明

此接口需要在脚本生命周期的Start()里调用 在初始化接口之前。

4.0.3 参数说明

参数名称 是否必传 类型 说明
listener 必传 WPGameSDKListener 当前实现 WPGameSDKListener 回调的类

4.0.4 接口示例

  1. WPGameSDK.getInstance().setListener(this);

4.1 SDK初始化接口【必接】

4.1.1 接口定义

  1. /// <summary>
  2. /// 初始化sdk
  3. /// </summary>
  4. /// <param name="version">版本名称</param>
  5. /// <param name="versioncode">版本号</param>
  6. /// <param name="gameResVer">游戏资源版本号,无资源版本号可传"</param>
  7. public void reInit(string version, string versioncode, string gameResVer)

4.1.2 重要说明

此接口要在setListener之后 以及调用其他接口之前调用。

4.1.3 参数说明

参数名称 是否必传 类型 说明
version 必传 String 版本名称
versioncode 必传 String 版本号
gameResVer 可选 String 游戏资源版本号,如游戏无此概念则可以传null。

4.1.4 接口示例

  1. WPGameSDK.getInstance().reInit("1.0.6","1","1");

4.1.5 初始化结果回调

初始化成功的回调

  1. public override void onInitSuccess(){}

初始化失败的回调

  1. public override void onInitFailed(WPGameErrorMsg errMsg)
  2. {
  3. showLog("onInitFailed", "msg: " + errMsg.errMsg + "code: " + errMsg.errCode);
  4. }

4.1.6 初始化回调接口参数WPGameErrorMsg说明

参数名称 类型 说明
errMsg string 错误描述
errCode string 错误码

4.2 设置游戏中使用的画布【必接】

4.2.1功能说明

由于需要在Canvas下展示SDK相关UI,所以需要游戏调用此接口设置场景中的CanvasName,保证正常运行SDK功能

4.2.2接口使用说明

  1. WPGameSDK.getInstance().SetGameCanvasName("游戏中使用的CanvasName");

4.3 SDK登录接口【必接】

4.3.1 功能说明

调出unity内嵌Webview SDK登录界面 可以进行账号登录注册操作

4.3.2 接口定义

  1. //登录接口
  2. public void login ()

4.3.3 接口示例

  1. WPGameSDK.getInstance().login();

4.3.4 登录成功回调接口

  1. public override void onLoginSuccess(WPGameUserInfo userInfo)
  2. {
  3. showLogWarning("onLoginSuccess", "uid: " + userInfo.uid + " ,username: " + userInfo.username + " ,userToken: " + userInfo.token + " ,loginType: " + userInfo.logintype + " ,deviceType: " + userInfo.deviceType + ", snid: " + userInfo.snid + ", serviceId: " + userInfo.serviceId + " ,returnJson: " + userInfo.returnJson +", msg: " + userInfo.errMsg);
  4. }

4.3.5 登录成功回调接口参数说明

参数名称 重要性 类型 说明
userInfo 必须 WPGameUserInfo 当前登录用户的用户信息数据。

4.3.6 登录成功返回数据UserInfo说明

参数名称 类型 说明
userInfo.uid String 用户中心生成的用户ID,游戏应以此ID作为用户登陆的唯一标识
userInfo.token String 用户中心生成的用户token,游戏需要用来向用户中心服务器做登录验证
userInfo.logintype String 登录类型
userInfo.username String 用户中心生成的用户名称
userInfo.userServiceCode String 设备当前serviceCode数据,用于服务端打点使用
userInfo.isFirstLoginStatus bool 当前用户是否首登,true 是, fasle 不是
userInfo.firstLoginTime long 返回当前用户首次登录时间戳
userInfo.returnJson String Json格式的字符串。第三方用户系统返回给用户中心的数据,不同渠道返回的数据会有所不同,游戏根据情况酌情使用,不需要的话可以不取。

userInfo.logintype: 登录类型,具体值的含义请见下表

loginType 含义
speedy 快速登录
common 用户名密码用户
phone 手机号用户
email 邮箱用户
thirdHidden 第三方用户登录
accessToken token登录

4.3.7 登录失败回调

  1. public override void onLoginFailed (WPGameErrorMsg errMsg)
  2. {
  3. showLog("onLoginFailed", "msg: "+ errMsg.errMsg);
  4. }

WPGameErrorMsg 说明

参数名称 类型 说明
errMsg string 错误描述
errCode string 错误码

4.3.8 登录取消回调

  1. public override void onLoginCancel(WPGameErrorMsg errMsg)
  2. {
  3. showLog("onLoginCancel", "msg: " + errMsg.errMsg + "code: " + errMsg.errCode);
  4. }

WPGameErrorMsg 说明

参数名称 类型 说明
errMsg string 错误描述
errCode string 错误码

4.4 sdk登录注销接口【必接】

4.4.1功能说明

注销当前登录账号,注销成功后会调用游戏实现功能后的注销回调接口。

4.4.2接口定义

  1. public void logout ()

4.4.3调用示例

  1. WPGameSDK.getInstance().logout();

4.4.4注销成功回调接口

  1. public override void onLogoutSuccess ()
  2. {
  3. showLog("onLogoutSuccess", "");
  4. //注销成功后具体逻辑请游戏客户端实现。
  5. }

4.5 sdk切换账号接口【必接】

4.5.1接口定义

  1. public void switchAccount()

4.5.2接口示例

  1. WPGameSDK.getInstance().switchAccount();

4.5.3切换账号登录成功回调接口

  1. public override void onSwitchAccountSuccess(WPGameUserInfo userInfo){
  2. //切换账号成功,清除原来的角色信息,使用获取到新的用户信息,回到进入游戏的界面,不需要再次调登录
  3. }

4.5.4切换账号登录成功回调接口参数说明

参数名称 重要性 类型 说明
userInfo 必须 UserInfo 当前登录用户的用户信息数据。

4.5.5切换账号登录成功返回数据UserInfo说明

参数名称 类型 说明
userInfo.uid String 用户中心生成的用户ID,游戏应以此ID作为用户登陆的唯一标识
userInfo.token String 用户中心生成的用户token,游戏需要用来向用户中心服务器做登录验证
userInfo.logintype String 登录类型
userInfo.username String 用户中心生成的用户名称
userInfo.userServiceCode String 设备当前serviceCode数据,用于服务端打点使用
userInfo.isFirstLoginStatus bool 当前用户是否首登,true 是, fasle 不是
userInfo.firstLoginTime long 返回当前用户首次登录时间戳
userInfo.returnJson String Json格式的字符串。第三方用户系统返回给用户中心的数据,不同渠道返回的数据会有所不同,游戏根据情况酌情使用,不需要的话可以不取。

userInfo.logintype: 登录类型,具体值的含义请见下表

loginType 含义
speedy 快速登录
common 用户名密码用户
phone 手机号用户
email 邮箱用户
thirdHidden 第三方用户登录
accessToken token登录

4.5.6切换账号登录失败回调

  1. public override void onSwitchAccountFailed(WPGameErrorMsg message)
  2. {
  3. showLog("onSwitchAccountFailed", "msg: " + message.errMsg);
  4. }

ErrorMsg说明

参数名称 类型 说明
errMsg string 错误描述
errCode string 错误码

4.6角色信息设置接口【必接】

4.6.1功能说明

成功登录并进入游戏后,游戏客户端必须调用此接口设置用户的角色信息,角色信息在其他功能接口中需要用到,如未调用则无法使用支付功能。用户首次创建或注册角色并登录时,需要调用一次注册设置和一次登录设置;用户使用老角色登录,则只需要调用一次登录设置。

注意:
1.游戏内没有角色注册行为的,在游戏自动给用户创建角色的时候,即认为注册。
2.用户首次创建或注册角色并登录时,需先调用注册设置,再调用登录设置。
3.研发需要在本地做基础判断,一些特殊符号不允许出现在角色名、公会名、队伍名、联盟名等名称中,具体符号_(, | { } “ ‘ \ / @ $ # & ! - + ( ) . ? ~ )^*

4.6.2接口定义

  1. /**
  2. * 游戏在创建角色、登录、角色数据发生变化时调用
  3. *
  4. * @param roleinfo
  5. */
  6. public void createRole(WPGameSDKRoleInfo gameRoleInfo)//创建角色
  7. public void enterGame(WPGameSDKRoleInfo gameRoleInfo)//开始游戏
  8. public void updateRole(WPGameSDKRoleInfo gameRoleInfo);//角色信息变更

4.6.3 WPGameSDKRoleInfo参数说明

参数名称 重要性 类型 说明
serverName 必须 String 当前角色所在游戏服务器名称
serverID 必须 String 当前角色所在游戏服务器ID
gameRoleName 必须 String 角色名称
gameRoleID 必须 String 角色ID
gameRoleLevel 必须 String 角色等级
vipLevel 必须 String 角色VIP等级,没有等级可以传”0”
laborunion 非必须 String 角色所在公会
roleCreateTime 必须 String 角色创建时间(服务器采集)参数类型:String时间类型:long 精度:秒 (即10位数)
roleLevelMTime 必须 String 角色等级变化时间(服务器采集)参数类型:String 时间类型:long 精度:秒 (即10位数)

4.6.4 接口示例

  1. WPGameSDKRoleInfo gameRoleInfo = new WPGameSDKRoleInfo();
  2. gameRoleInfo.gameRoleID = "000001";
  3. gameRoleInfo.gameRoleLevel = "1";
  4. gameRoleInfo.gameRoleName = "哈哈哈";
  5. gameRoleInfo.laborunion = "嘿嘿嘿";
  6. gameRoleInfo.serverID = "1";
  7. gameRoleInfo.serverName = "1区";
  8. gameRoleInfo.vipLevel = "1";
  9. gameRoleInfo.roleCreateTime = "roleCreateTime";
  10. gameRoleInfo.roleLevelMTime = "roleLevelMTime";
  11. // 角色注册成功需调用此接口设置角色信息,正常情况下,注册只在新角色注册成功后调用一次
  12. WPGameSDK.getInstance ().createRole(gameRoleInfo);//创建角色
  13. WPGameSDKRoleInfo gameRoleInfo = new WPGameSDKRoleInfo();
  14. gameRoleInfo.gameRoleID = "11111";
  15. gameRoleInfo.gameRoleLevel = "1";
  16. gameRoleInfo.gameRoleName = "哈哈哈";
  17. gameRoleInfo.laborunion = "嘿嘿嘿";
  18. gameRoleInfo.serverID = "1";
  19. gameRoleInfo.serverName = "1区";
  20. gameRoleInfo.vipLevel = "1";
  21. gameRoleInfo.roleCreateTime = "roleCreateTime";
  22. gameRoleInfo.roleLevelMTime = "roleLevelMTime";
  23. // 角色登陆成功并成功进入游戏后需调用此接口设置角色信息,在每次角色登陆成功后都要调用
  24. WPGameSDK.getInstance ().enterGame (gameRoleInfo);//进入游戏
  25. WPGameSDKRoleInfo gameRoleInfo = new WPGameSDKRoleInfo();
  26. gameRoleInfo.gameRoleID = "11111";
  27. gameRoleInfo.gameRoleLevel = "99";
  28. gameRoleInfo.gameRoleName = "哈哈哈";
  29. gameRoleInfo.laborunion = "嘿嘿嘿";
  30. gameRoleInfo.serverID = "1";
  31. gameRoleInfo.serverName = "1区";
  32. gameRoleInfo.vipLevel = "13";
  33. gameRoleInfo.roleCreateTime = "roleCreateTime";
  34. gameRoleInfo.roleLevelMTime = "roleLevelMTime";
  35. WPGameSDK.getInstance ().updateRole(gameRoleInfo);//角色信息变更

4.7进入用户中心【必接】

4.7.1功能说明

进入官网SDK的用户中心界面。

4.7.2接口定义

  1. public void userCenter()

4.7.3接口示例

  1. WPGameSDK.getInstance().userCenter();

4.8支付接口【必接,CB期间根据运营需求接入】

4.8.1功能说明

全球PC版打开Xsolla支付页面。SteamPC在steam客户端拉起支付页,实现游戏中的道具购买。
注意:
如游戏中所卖商品在游戏界面显示为“100元宝”,当调用支付接口时,商品名称请传“元宝”,商品数量请传“100”
如游戏中所卖商品在游戏界面显示为“月卡“,当调用支付接口时,商品名称请传“月卡”,商品数量请传“1”
如游戏中所卖“月卡”有多个,当调用支付接口时,商品名称建议传入月卡的金额。例如“30元月卡”、“50元月卡”等等,商品数量请传“1”
礼包类与月卡同理,请在商品名称尽量传入礼包对应的价格,例如:“30元礼包”,“50元礼包,商品数量请传“1”。

4.8.2接口定义

  1. public void pay (WPGameSDKProduct orderInfo)

4.8.3 WPGameSDKProduct参数说明

参数名称 重要性 类型 说明
productId 必须 String 游戏自定义的商品ID,必传。
price 必须 String 商品价格,单位为分。
currencyType 必须 String 货币类型(1人民币2美元3日元4港币5英镑6新加坡币7越南盾8台币9韩元10泰铢)
productName 必须 String 商品名称
buyNum 必须 String 商品数量
productDesc 必须 String 商品描述
currency 可选 String 购买的虚拟货币名称,比如 钻石,金币,宝石 等
GamedDeliverUrl 可选 String 游戏发放道具服务器地址,用户支付成功后计费中心会回调此地址告知游戏进行道具发放。 可以配置到SDK后台。
extension 可选 String 游戏自定义数据,支付成功后,计费中心会将此字段数据回传给游戏服务器。
rolelv 可选 String 角色等级,请传数字。
roleVipLv 可选 String 角色VIP等级,请传数字,如游戏中无角色VIP等级可以传0。

currencyType说明:

货币类型值 货币名称 货币单位
1 人民币
2 美元 美分
3 日元
4 港币
5 英镑 便士
6 新加坡币
7 越南盾
8 台币
9 韩元
10 泰铢 萨当

4.8.4接口示例

  1. WPGameSDKProduct product = new WPGameSDKProduct();
  2. product.productId = "1003";
  3. product.price = "99";
  4. product.currencyType = "2";
  5. product.productName = "0.99美元";
  6. product.buyNum = "1";
  7. product.productDesc = "199美分";
  8. product.currency = "钻石";
  9. product.extension = "我是扩展字段";
  10. product.rolelv = "99";
  11. product.roleVipLv = "15";
  12. WPGameSDK.getInstance ().pay (product);

4.8.5回调接口说明

  1. //支付成功
  2. public override void onPaySuccess (WPGamePayResult payResult)
  3. {
  4. showLog("onPaySuccess", "pbid: " + payResult.pbid + ", orderID: " + payResult.orderID );
  5. }
  6. //用户取消支付
  7. public override void onPayCancel (WPGamePayResult payResult)
  8. {
  9. showLog("onPayCancel", "pbid: " + payResult.pbid + ", orderID: " + payResult.orderID);
  10. }
  11. //支付失败
  12. public override void onPayFailed (WPGamePayResult payResult)
  13. {
  14. showLog("onPayFailed", "pbid: " + payResult.pbid + ", orderID: " + payResult.orderID);
  15. }
  16. //支付结果未知(下单成功)
  17. public override void onPayUnknown(WPGamePayResult payResult)
  18. {
  19. showLog("onPayUnknown", "pbid: " + payResult.pbid + ", orderID: " + payResult.orderID);
  20. }

4.8.6回调接口参数说明

参数名称 重要性 类型 说明
pbid 必须 String 游戏自定义商品ID。
orderID 必须 String 计费中心生成的订单号,支付失败或者用户取消支付时可能返回为空。

注:”onPayUnknown”表示当前订单已经成功提交,但用户是否进行支付,以计费中心服务器的通知为准。 “onPayUnknown”代表支付流程结束。”onPayUnknown”回调触发以后不会在有支付成功和支付失败的回调了,游戏需要根据服务器通知为准。

4.9 礼包码兑换【选接】

4.9.1功能说明

通过礼包码来兑换游戏中对应的礼包。

4.9.2礼包码兑换接口定义

  1. public void giftExchange(string giftCode , string url ,string extendParams)

4.9.3参数说明

参数名称 重要性 类型 说明
giftCode 必须 String 需要兑换的礼包码
url 必须 String 兑换成功后,计费中心会通知此地址发货。(游戏服发货地址)
extendParams 可选 String 游戏透传参数,通知发货时会原样返回。

4.9.4接口示例

  1. WPGameSDK.getInstance().giftExchange("礼包码", "172.1.1.1", "我是扩展接口");

4.9.5回调接口说明

  1. //兑换成功:
  2. public override void onGiftExchangeSuccess(string giftid, string extendParams)
  3. {
  4. showLog("onGiftExchangeSuccess", "giftid === "+ giftid + " extendParams === "+ extendParams);
  5. }
参数名称 类型 说明
giftid String 礼包码归属的礼包ID
extendParams String 透传参数
  1. //兑换失败:
  2. public override void onGiftExchangeFail(int code,string message)
  3. {
  4. showLog("onGiftExchangeFail", "code === " + code + " message ===== "+ message);
  5. }
参数名称 类型 说明
code String 错误码
Message String 错误内容详情

4.10生命周期相关接口【必接】

在Unity中的OnApplicationQuit()方法里调用onDestroy

4.10.1 onDestroy调用示例

  1. private void OnApplicationQuit()
  2. {
  3. WPGameSDK.getInstance().onDestroy();
  4. }

4.11退出游戏【必接】

4.11.1接口定义

  1. public void exit()

4.11.2接口示例

  1. WPGameSDK.getInstance().exit();

4.11.3退出回调

  1. public override void onExitSuccess ()
  2. {
  3. showLog ("onExitSuccess", "");
  4. //退出成功的回调,游戏实现保存游戏数据,退出游戏
  5. #if UNITY_EDITOR
  6. UnityEditor.EditorApplication.isPlaying = false;
  7. #else
  8. Application.Quit();
  9. #endif
  10. }

4.12开启或者关闭SDK日志输出【正式包需要关闭】

4.12.1功能说明

打开后可以在unity console看到sdk层面的相关信息输出,游戏接入调试阶段可开启 出正式游戏包时请务必关闭日志输出。

4.12.2接口示例

  1. MIDBaseSdkLog.isOutLog = true;//开启
  2. MIDBaseSdkLog.isOutLog = false;//关闭

4.13获取平台ID【选接】

4.13.1 功能说明

获取当前游戏包中的ServiceId,(游戏联运渠道ID,游戏可根据此ID区分各发行渠道)。

4.13.2接口示例

  1. string ServiceId = WPGameSDK.getInstance().getServiceId();

4.14获取ChannelId【选接】

4.14.1功能说明

获取当前游戏包中的ChannelId,(游戏推广渠道ID,含概CPS渠道,短链渠道等唯一标识)。

4.14.2接口示例

  1. string ChannelId = WPGameSDK.getInstance().getChannelId();

4.15获取SNID【停用】

4.16获取发行区域【选接】

4.16.1功能说明

获取当前游戏包中的LocaleId, (游戏发行区域ID)。

4.16.2 接口示例

  1. string LocaleId = WPGameSDK.getInstance().getLocaleId();

4.17获取机型组ID【选接】

4.17.1功能说明

获取当前游戏包中的deviceGroupId, (机型组ID)。

4.17.2接口示例

  1. string DeviceGroupId = WPGameSDK.getInstance().getDeviceGroupId();

4.18打开活动公告和登录公告接口【选接】

4.18.1功能说明

调用打开活动公告接口,一般用于游戏内公告展示。回调里返回公告打开和关闭事件,回调接口目录:4.19

4.18.2活动公告接口示例

  1. WPGameSDK.getInstance().OpenActivityNotice();

4.18.3登录公告接口示例

  1. WPGameSDK.getInstance().OpenLoginNotice();

4.19设置公告页面开启关闭事件回调【选接】

4.19.1功能说明

回调里返回公告打开和关闭事件

4.19.2回调说明

回调给研发公告的事件,包含用户通过SDK悬浮层公告按钮点击以后的公告事件,研发主动调用活动公告打开关闭事件,公告不存在的回调。

  1. /**
  2. * 登录公告和游戏内活动公告打开关闭事件
  3. */
  4. public override void onSDKActivityNoticeClose(string data)
  5. {
  6. showLog("活动公告关闭事件", "data === " + data);
  7. }
  8. public override void onSDKActivityNoticeStart()
  9. {
  10. showLog("活动公告打开事件", "");
  11. }
  12. public override void onSDKLoginNoticeClose()
  13. {
  14. showLog("登录公告关闭事件", "");
  15. }
  16. public override void onSDKLoginNoticeStart()
  17. {
  18. showLog("登录公告打开事件", "");
  19. }
  20. public override void onSDKNoActivityNotice()
  21. {
  22. showLog("活动公告不存在", "");
  23. }
  24. public override void onSDKNoLoginNotice()
  25. {
  26. showLog("登录公告不存在", "" );
  27. }

4.20客服反馈功能 【选接】

4.20.1功能说明

游戏登录成功后,调用此接口,打开客服反馈界面。
游戏需要自己设计UI按钮,当用户点击此按钮时,调用接口,打开客服反馈界面。

4.20.2接口示例

  1. WPGameSDK.getInstance().customerFeedback();

4.21 获取资源更新CDN地址功能【必接】

4.21.1功能说明

初始化成功以后可以通过SDK获取配置到GSC后台的CDN数据。可以配置多个CDN和一个回源地址。

4.21.2接口示例

  1. WPGameSDK.getInstance().GetUpdateCDNPath();

4.21.3回调接口示例

获取成功后的 json格式说明

参数名 格式 说明
domainList String cdn地址集合,逗号分隔,研发可以按照顺序尝试使用
  1. public override void onGetPathSuccess(JsonData cdnPath)
  2. {
  3. showLog("onSDKActivityDetilsStart", "cdnPath === " + cdnPath.ToJson());
  4. }
  5. public override void onGetPathFail(int code)
  6. {
  7. showLog("onGetPathFail", "code === " + code);
  8. }

4.22获取Servicecode【必接】

4.22.1功能说明

获取服务器端 发送日志使用的Servicecode
提供给BI日志用。
此接口请在登录成功后调用,不然数据不完整.

4.22.2接口示例

  1. string Servicecode = WPGameSDK.getInstance().getServicecode();

4.23打开隐私协议【选接】

4.23.1 功能说明

可以根据需求在游戏内添加打开隐私协议按钮。

4.23.2接口示例

  1. WPGameSDK.getInstance().OpenAgreement();

4.24获取客户端IP【选接】

4.24.1功能说明

返回客户端当前IP,请在登录成功后获取。

4.24.2接口示例

  1. string ip = WPGameSDK.getInstance().getClientIP();

4.25打开webview【选接】

4.25.1功能说明

打开一个webview,并跳转到指定链接

4.25.2接口使用说明

  1. WPGameSDK.getInstance().OpenWebview("需要打开的url");

4.26 SDK语言切换【选接】

4.26.1功能说明

适用于有切换语言需求的产品。
如果没有多语言需求可以忽略。
可以在初始化前调用。
暂时支持 英文,中文,繁体,印尼语,泰语,德语,韩语,俄罗斯语,法语,西班牙语,意大利,葡萄牙语,
如果研发有多语言需求,需要在启动后先设置语言,避免SDK展示语言和游戏展示语言不一致情况。

4.26.2接口原型

  1. public void UpdateLocale(string language)

4.26.3参数示例

语言 参数
英文 en
中国大陆 zh-CN
繁体中文 zh-HK
印尼语 id
泰语 th
德语 de
韩语 ko
俄罗斯语 ru
法语 fr
西班牙语 es
意大利 it
葡萄牙 pt
日文 ja
土耳其语 tr
越南语 vi
荷兰语 nl
挪威语 no
波兰语 pl
瑞典语 sv

4.26.4接口示例

  1. WPGameSDK.getInstance().UpdateLocale("zh-TW");

4.27 游戏进度上报【必接】

4.27.1 功能说明

研发上报游戏现在的进度,用于SDK标记游戏现在所处进度,并进行相关操作。
以悬浮层按钮开关为例:
SDK会在进入服务器列表时打开SDK悬浮功能条,
SDK会在离开服务器选择时关闭SDK悬浮功能条,
请研发上报事件时尽量准确。

4.27.2 上报进度参数说明

参数名称 说明
WPGameSDKParam.GAME_PROCESS_EVENT_TYPE_IN_SELECT_SERVERLIST 进入选择服务器列表页面的事件。
WPGameSDKParam.GAME_PROCESS_EVENT_TYPE_OUT_SELECT_SERVERLIST 离开选择服务器列表页面的事件。

4.27.3 接口示例

  1. /**
  2. * 研发主动调用,传入不同的事件用于标记游戏现在所处进度
  3. *
  4. */
  5. WPGameSDK.getInstance().SendGameProcess(int event);

4.28 第三方广告平台打点接口【选接】

4.28.1 功能说明

游戏端发送第三方的日志
比如给AppsFlyer、Facebook之类的第三方统计SDK发送。
需要运营和技术支持确定参数和日志key以后调用。
使用此接口需要联系技术支持获取详细点位文档。
这里只是说明和用完成新手引导作为举例说明。

4.28.2 接口说明

  1. /// <summary>
  2. /// 游戏端发送第三方的日志
  3. /// </summary>
  4. /// <param name="logKey">日志KEY</param>
  5. /// <param name="logValue">日志内容 HashMap key-val格式</param>
  6. WPGameSDK.getInstance().MIDBaseSendAnalyticsInfoLog(string logKey,
  7. Dictionary<string, object> logValue);

4.28.3 接口示例

  1. Dictionary<string, object> logValue = new Dictionary<string, object>();
  2. WPGameSDK.getInstance().MIDBaseSendAnalyticsInfoLog("tutorial_complete ",
  3. logValue);

4.29 上传研发异常文件【选接】

4.29.1 功能说明

游戏端发送异常文件

4.29.2 接口说明

  1. /// <summary>
  2. /// 上传研发异常文件
  3. /// </summary>
  4. /// <param name="filePath">异常文件路径</param>
  5. /// <param name="message">描述,可以为空</param>
  6. WPGameSDK.getInstance().MIDBaseSendLogWithFile(string filePath, string message);

4.29.3 接口示例

  1. WPGameSDK.getInstance().MIDBaseSendLogWithFile("文件路径 ","文件描述");

4.30 检查当前用户是否为游客【选接】

4.30.1 功能说明

检查当前用户是否为游客

4.30.2 接口说明

  1. /// <summary>
  2. /// 检查当前用户是否为游客
  3. /// </summary>
  4. /// <returns></returns>
  5. WPGameSDK.getInstance().MIDBaseCheckUserisgGuest();

4.30.3 接口示例

  1. bool isGuest = WPGameSDK.getInstance().MIDBaseCheckUserisgGuest();