Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件
  xEvpnM0NnPEL 2023年11月02日 172 0

为了使用unity方便快速集成华为hms core sdk,有游戏开发者做了专业的插件,将该插件集成到unity项目中,省去了自己集成sdk的麻烦,导入后直接调用接口即可。

该插件分别支持unity 2018、2019、2020、2021版本,使用unity2018版本的使用2.0-2018分支代码,2019、2020、2021版本使用master分支代码,插件链接:​https://github.com/EvilMindDevs/hms-unity-plugin

导入步骤如下:

根据本地unity版本自行选择并下载对应的.unitypackage版本,然后打开本地工程,选择 Assets> Import Package> Custom Package:

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_json

在文件资源管理器中选择下载的 HMS Unity 插件,默认全选中。将出现“导入 Unity 包”对话框:

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_json_02

点击import,完成后,Unity 会将 Unity 插件部署到您的Assets文件夹中。具体文件夹为Assets中huawei目录和StreamingAssets目录。

为了让插件生效,还需将您的项目与插件关联,集成游戏插件需要关联game service和account service,步骤如下:

选择huawei>kit Settings,打开Hms Settings弹窗:

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_assets目录_03

勾选Game Service的同时,会自动勾选Account。

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_json_04

勾选后关闭弹窗,可以在项目栏Hierarchy下,看到自动创建了HMSAccountManager和HMSGameManager实例。说明关联成功,可以通过插件实现调用接口了。

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_assets目录_05

Huawei目录下有demo示例,可以快速运行demo。

运行demo之前,需要修改包名与华为开发者后台保持一致,并下载华为开发者后台的json文件替换demo中的json文件,替换路径:Assets>StreamingAssets。

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_开发者_06

并修改包名与json保持一致,打开:

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_开发者_07

点击页面中Player Settings…

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_json_08

选择页面左侧栏中Player,选择Other Settings,勾选Override default Package Name,并输入包名,如图:

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_开发者_09

替换包名以及对应的json文件后,打开demo并运行即可。游戏demo路径:Assets>Huawei>demos>Game。

也可以自己导入插件后,根据demo示例,集成华为Game Service SDK,比如集成登录接口:

在assets目录下创建一个布局场景文件,创建一个按钮:

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_json_10

创建脚本文件,调用登录接口并绑定按钮点击事件,接口代码如下:

在Start方法中实现插件注册好的登录相关的接口方法。

void Start()
{
HMSAccountManager.Instance.OnSignInSuccess = OnSignInSuccess;
HMSAccountManager.Instance.OnSignInFailed = OnSignInFailed;
}
public void OnSignInSuccess(AuthAccount auth)
{
Debug.Log("sign success");
}

public void OnSignInFailed(HMSException e)
{
Debug.LogError(e.Message);
}

然后接口调用插件封装好的接口即可。

public void signIn()
{
HMSAccountManager.Instance.SignIn();
}

最后运行并测试接口是否成功,接口调用成功会打印sign success日志,如图:

Unity集成华为游戏服务SDK方式(二):集成Unity-Plugins插件_json_11

其他接口接入类似,可自行参考demo集成,这里不再赘述:https://github.com/EvilMindDevs/hms-unity-plugin

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论