使用unity完成华为游戏的初始化和华为帐号登录

华为开发者论坛 2021/1/9 20:08:15

背景介绍: 至此,unity提供给华为的demo已经可以正常运行起来。 这个帖子,准备继续测试并验证该demo是否可以满足以下两个要求。完成初始化的一些操作实现华为游戏帐号登录,能够获取到玩家的相关信息。Demo测试后,大家自行参考这个demo设计自己的代码就好。 涉及Unity…

背景介绍:

至此,unity提供给华为的demo已经可以正常运行起来。

这个帖子,准备继续测试并验证该demo是否可以满足以下两个要求。

  • 完成初始化的一些操作

  • 实现华为游戏帐号登录,能够获取到玩家的相关信息。

Demo测试后,大家自行参考这个demo设计自己的代码就好。

涉及Unity提供的接口

初始化接口:

  • HuaweiGameService.AppInit()

  • HuaweiGameService.Init()

登录相关接口:

  • HuaweiGameService.Login(ILoginListener listener)

  • HuaweiGameService.SilentSignIn(ILoginListener listener)

  • HuaweiGameService.SignOut(ILoginListener listener)

  • HuaweiGameService.CancelAuthorization(ICancelAuthListener listener)

获取玩家信息相关接口:

  • HuaweiGameService.GetCurrentPlayer(bool isRealTime, IGetPlayerListener listener)

登录流程

按照[华为官网的联运游戏规则],如果游戏发布地区:

  • 包含中国大陆,客户端需要走如下流程:

AppInit > Init > login > getCurrentPlayer

  • 不包含中国大陆,客户端需要走如下流程:

不强制要求:AppInit > Init > login > getCurrentPlayer

不强制必须登录华为帐号,可以自行设计游戏登录。

我这里因为应用要发布中国大陆,所以按照前者要求接入了相关接口。

Demo测试

测试机型说明:
测试机型:Huawei phone,EMUI10.0.0,Android 10

该手机安装的HMS Core版本是:5.0.4.301

该手机安装的华为应用市场版本是:11.0.2.302

Unity版本号:2020.1.2f1c1

Unity的demo代码可参考如下文件,我这里打开瞅了瞅,unity团队对每个接口是否成功调用都做了界面信息打印,所以实际测试时,我先直接看界面是否有成功提示,没有再继续定位原因了,简单高效。

在这里插入图片描述

测试步骤说明

  1. 启动demo,界面提示如下:

在这里插入图片描述

Unity默认应用启动时调用HuaweiGameService.AppInit()接口,这个处理也是满足华为侧要求,上述提示表明该接口已经调用成功。

  1. 点击Init按钮,界面和日志如下:

在这里插入图片描述

说明:这个接口按照华为联运游戏要求,在游戏启动时需要调用的,这里unity做了一个按钮,实际大家处理时自行在启动时自动调用。

  1. 点击Login > login,手机界面如下:
    在这里插入图片描述

成功拉起华为帐号登录授权界面,选择Authorise and log in后,可以成功看到登录成功的欢迎提示框,相关日志打印也提示登录成功。

在这里插入图片描述

注意下:这里一定要看到华为登录欢迎框,之前我对接过华为联运游戏,因为没有欢迎框,被华为审核驳回过。

  1. 点击getCurrentPlayer按钮,界面和日志提示如下,表明获取华为游戏玩家信息接口已经成功。这个接口按照华为游戏要求在login接口处理后需要调用,而且需要对获取的玩家信息做校验。

在这里插入图片描述

接来下可以参考[华为的文档完成该玩家信息的校验,

完成玩家信息的校验并通过后,华为帐号的游戏登录流程就算完成了。

登录其他业务接口(按需自行处理了)

  • HuaweiGameService.SilentSignIn(ILoginListener listener)

点击silentSignIn按钮,界面提示如下,表明接口调用成功。

在这里插入图片描述

  • HuaweiGameService.SignOut(ILoginListener listener)

点击signOut按钮,界面提示如下:

在这里插入图片描述

  • HuaweiGameService.CancelAuthorization(ICancelAuthListener listener)

点击cancelAuthorization按钮,界面提示如下:

在这里插入图片描述

重新点击login按钮,界面再次拉起登录授权界面,表明授权确实取消了。

在这里插入图片描述

作者:Mayism

随时随地学软件编程-关注百度小程序和微信小程序
关于找一找教程网

本站文章仅代表作者观点,不代表本站立场,所有文章非营利性免费分享。
本站提供了软件编程、网站开发技术、服务器运维、人工智能等等IT技术文章,希望广大程序员努力学习,让我们用科技改变世界。
[使用unity完成华为游戏的初始化和华为帐号登录]http://www.zyiz.net/tech/detail-150759.html

上一篇:使用 Jetpack DataStore 进行数据存储

下一篇:XPage系列|这次升级后终于是全自动化注册了!

赞(0)

共有 条评论 网友评论

验证码: 看不清楚?
    关注微信小程序
    程序员编程王-随时随地学编程

    扫描二维码或查找【程序员编程王】

    可以随时随地学编程啦!

    技术文章导航 更多>
    扫一扫关注最新编程教程