跳到主要内容

GCloud 切换 Player Network SDK 指引

替换 SDK​

首先,您需要将 GCloud MSDK 替换成 Player Network SDK。

  1. 移除工程中 GCloud MSDK 插件目录。

    • 移除 SDK 脚本,脚本的目录: Assets/GCloudSDK/Scripts/ 目录下的 MSDKCore,MSDKBugly,和 MSDKFirebase 目录。
    • 移除 Android 各个插件目录:Assets/Plugins/Android/gcloudsdk-msdk-xxx 目录和相关的第三方插件目录。
    • 移除 Android 资源文件: Assets/Plugins/Android/assets/ 目录下的 MSDKConfig.ini,MSDKRetMsg.json,MSDKBuglyConfig.json,msdk_permission_content.html 和 msdk_policy_content.html 文件。
    • 移除 Android mainTemplate.gralde 文件中有关 GCloud MSDK 的代码。
    • 移除 iOS 插件目录, Assets/Plugins/iOS/GCloudSDK/MSDKxxx 目录。
  2. 在工程中接入 Player Network SDK 插件。

  3. 切换 Player Network 后台服务。

游戏客户端代码适配​

至此已成功将 GCloud MSDK 替换成 Player Network SDK。 此部分介绍 Player Network SDK 和游戏客户端代码的适配。

适配 Player Network SDK​

Player Network SDK 针对引擎,提供更贴心的适配和封装,在 Unity 统一的接口文件,更方便业务接入。

  • 所有的接口,都在 INTLAPI.cs 文件中。
  • 所有的数据结构定义,都在 INTLDefine.cs 文件中。
  • 所有的错误码,都在 INTLErrorCode.cs 文件中。

业务只需关注以上三个脚本即可,无需关注内部逻辑实现。

  • Player Network SDK 在接口封装上做了优化,比如接口命名更直接,登录接口中去掉了不常用 subChannel 字段等。
  • Player Network SDK 优化了每个模块的回调,都以 INTLAPI.AddxxxObserver 和 INTLAPI.RemovexxxObserver 的方式定义,所有的回调都在 INTLAPI.cs 文件中定义。

本文以登录接口为例,展示如何进行适配。

代码示例​

通过 MSDK 实现登录,添加登录观察者监听,代码如下:

// 设置回调
MSDKLogin.LoginRetEvent += OnLoginRetEvent;

// 处理回调
private void OnLoginRetEvent(MSDKLoginRet loginRet)
{
Debug.Log ("OnLoginRetNotify in Login");
// ...
}
// 调用登录接口
MSDKLogin.Login(MSDKChannel.WeChat);

通过 Player Network SDK 实现登录,添加登录观察者监听,代码如下:

// 设置回调
INTLAPI.AddAuthResultObserver(OnAuthResultEvent);

// 处理回调
public void OnAuthResultEvent(INTLAuthResult ret)
{
Debug.Log ("OnAuthResultEvent in Login");
//...
}

// 调用登录接口
INTLAPI.Login(INTLChannel.Facebook);

蓝图调用​

不适用。

替换后台服务​

至此已成功适配游戏客户端。最后,您还需要将 GCloud 后台服务替换成 Player Network 后台服务。

由于 Player Network SDK 后台服务方式与 GCloud MSDK 相同,业务只需要切换 URL 地址。

Player Network 和 GCloud 的区别​

Player Network 从整体服务的角度出发,优化了模块和接口的设计,提供更统一的服务,方便业务快速接入。

  • Player Network 提供统一的服务,是真正的一个团队,一套服务。
  • Player Network 针对引擎,提供更贴心的适配和封装,在 Unity 统一的接口文件,更方便业务接入。