【问题标题】:Unity - Detect if Game Center is availableUnity - 检测 Game Center 是否可用
【发布时间】:2021-07-04 07:44:50
【问题描述】:

我的游戏正在使用 Unity API 调用 Game Center,我想像“Archero”一样使用它。

我想让它成为可能:

如果 Game Center 可用:登录并显示横幅...等

如果不是:请给我回电,不要显示 Game Center Authenticate Panel。

但无论我如何调用身份验证功能,它总是弹出身份验证面板。

有没有办法检测游戏中心是否可用?

顺便说一句,当用户取消认证3次时,游戏中心会屏蔽用户。 如果我可以通过代码做到这一点将非常有用,我可以用它来处理我的问题

这是我的验证码:

public void OnClick_Authenticate()
{
try
{
    Social.localUser.Authenticate(ProcessAuthentication);
}
catch
{
    ActiveCallback();
}
}

【问题讨论】:

  • 请显示您编写的代码,以及您遇到的困难
  • 我只是编辑我使用的代码,但它是简单的 Unity API
  • 什么时候不可用?一般情况下检查互联网连接是否足够?
  • 感谢您的回复,但我不知道为什么我需要检查互联网?
  • 你找到解决方案了吗?我注意到 archero 有同样的行为,我真的很想知道他们是如何处理这种行为的!

标签: xcode unity3d game-center


【解决方案1】:

我不认为这是可能的/有意的。你说的是 iOS 的“弹窗”吧?

就像 derHugo 所说,检查互联网连接是您的最佳选择

【讨论】:

  • 请问,为什么我需要检查互联网连接?我只想知道 iOS 中的游戏中心在身份验证之前是打开还是关闭。有什么我不知道的细节吗?
  • 也许尝试检查“Social.localUser”是否存在?我在 Unity 的文档中看不到任何内容,您可以在其中检查 Game Center 是否已启用。
  • 但是。在“Archero”中,当我已经登录游戏中心时,它会显示横幅,如果没有,则什么都没有。我真的很想知道他们是怎么做到的。
  • 您是否尝试检查“Social.localUser”?如果 Archero 做到了(并且它是在 Unity 中构建的),那么是的——你是对的,一定有办法
  • 我很确定 Archero 是 Unity 制作的,我已经尝试了我能得到的所有参数和功能,但没有任何帮助
【解决方案2】:

据我所知,您必须创建自定义插件才能实现 Archero 正在做的事情。

在身份验证过程结束时,如果用户未通过身份验证,iOS 会返回带有“登录”表单的 viewController。

在 iOS 上,开发者可以决定是否展示这个 viewController。社交插件没有这个选项,如果系统返回,它们总是显示登录视图控制器……如果你实现了你的插件,你可以决定不显示它……最后是 Archero 正在做的事情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多