Mas*_*ldo 2 android unity-game-engine ios game-center google-play-games
我们正在Unity3D中为iOS和Android编写应用程序,我们希望使用提供的Social API在iOS(使用GameCenter)和Android(使用Google Play游戏服务)上检索和发布highScores.
为了保持应用程序简单,重量轻,并避免交叉编译额外设置,我们不希望使用外部插件(除非第4点为真).
我搜索了文档和教程,我找到了这一个.实现已在C#中完成,但由于Unity指南也提供了ac#版本,所以它直接进行了.
然而,我们无法设法完成这项工作,可能也是因为我们不太清楚这个API是如何工作的.
首先:Unity指南声明"它[api]为不同的社交后端提供统一的接口,例如XBox Live或GameCenter",但是在实现中没有指定使用哪个社交后端.团结怎么知道呢?它根据平台切换?
第二:我在各种指南中都明白,为显示排行榜而提供的GUI是由主机平台直接提供的,从控制台日志中我得到以下成功消息:
Authenticated, checking achievements
Error: no achievements found
Successfully reported achievement progress
Run Code Online (Sandbox Code Playgroud)
但是在编辑器中运行应用程序,在用于Windows或BlueStacks中使用的apk的构建中,当我调用函数Social.ShowLeaderboardUI()时,我得到相同的消息; 是的
ShowLeaderboardUI not implemented
Run Code Online (Sandbox Code Playgroud)
我可以期待它来自编辑器和exe,但BlueStack模拟Android,如果它不提供谷歌播放服务我会感到惊讶.但是我也读到了一个"沙盒模式",它应该在编辑器中运行,这导致第三点:
我找不到设置此沙盒模式的方法,至少不能从该指南中设置.
第四点:Unity有一个GameCenter课程,但没有Google Play游戏服务的课程,所以:我可以用iOS做我想要的但是我需要一个外部插件来实现Android的ISocial界面?
第五点:如何在沙盒和部署模式下处理身份验证?
正如你所看到的,我肯定在编码方面,概念方面或两者都缺少某些东西.您能否提供有关如何实现我所需要的一步一步的程序?我不需要获得源代码片段,但如果有人能够很好地解释这个API是如何工作的,那就太棒了.
提前致谢
对于Android:
要将Google Play服务集成到Unity中,您需要使用插件.您可以在此处找到Google支持的插件.您可以在此找到有关排行榜如何运作的信息.基本上它是如何工作的:
我建议你看看Cubic Pilot_4.6样本,它演示了如何实现排行榜.此外,由于模拟器在处理Google Play服务和帐户登录时可能遇到问题,因此您应该在物理设备上进行此测试.
在身份验证方面,Google Play服务会为您处理大部分内容.您可以在samples(Social.localUser.Authenticate
)中看到更多内容.