如何在Unity中使用Google帐户对用户进行身份验证?

问题描述 投票:0回答:2

Firebase 身份验证允许您使用来自其他登录提供商(Facebook、Twitter 等)的身份验证令牌进行身份验证。我的应用程序打算在 iOS 和 Android 上发布。我认为通过 Google 和 Apple 进行身份验证可以覆盖 99% 的所有潜在用户。到目前为止,我发现在 Unity 中使用 Google 对用户进行身份验证是一种可怕的体验。

https://firebase.google.com/docs/auth/unity/google-signin 关于 Google 身份验证的 Firebase 指南仅提供有关如何将 Google 身份验证令牌交换为 Firebase 身份验证令牌的指南。与其他 Firebase 身份验证提供商的页面不同,它甚至没有提示如何首先获取 Google 身份验证令牌,甚至没有提及可能的插件。

https://github.com/googlesamples/google-signin-unity 网上有一个项目可以让用户使用 Unity 项目登录 Google。但是,仅当项目已在 iOS 或 Android 上构建并运行时才可以登录,而在编辑器中则无法登录。特别是对于 iOS,这使得开发变得非常疲惫。一位有用的用户发布了一个解决方法,以便它可以在编辑器中运行,但这个解决方案似乎已经过时了。如果谷歌认真地支持谷歌登录,它早就添加了这个功能。事实上,该项目已经一年多没有更新了。

https://github.com/playgameservices/play-games-plugin-for-unity Google 似乎确实在积极为 Unity 开发 Google Play Games api。不过,它不再支持 iOS。此外,我的应用程序不是游戏,这可能会引起一些混乱。我希望用户能够使用任何 Google 帐户登录我的应用,而不仅仅是当前的 Play 游戏帐户。

我不知道从这里该做什么。我的搜索结果越来越少。谷歌似乎不希望开发者能够实现登录解决方案。与此同时,苹果公司正在强制将他们的新登录解决方案作为应用程序商店批准的条件。我不知道该怎么办。有人可以帮忙吗?

android ios unity-game-engine google-signin unity-editor
2个回答
1
投票

留下答案,因为我无法发表评论。 对于某些人来说,这可能不是一个理想的解决方案,但绝对是一个可行的解决方案。 我在应用程序中使用 PassportJS 来验证用户登录。

  • 使用 NodeJS 和 PassportJS 创建 Web 登录页面。
  • 当用户点击“使用 Google 登录”时,使用 设备 ID 打开此网页。
  • 用户登录后,将登录的用户与设备id关联起来。
  • 当用户返回 Unity 应用程序时,向您的网络服务询问与设备 ID 相关联的 Google ID。

当用户登录时,您可以使数据库中的此设备 ID 过期,以允许不同的用户登录同一设备。


0
投票

绝对没有解决方案,我发现的唯一的事情是你要么使用 firebase 作为一个整体来进行身份验证和数据库,要么你没有得到谷歌身份验证

© www.soinside.com 2019 - 2024. All rights reserved.