c# - unity Game Center 登录对话框取消后不再显示
问题描述
我在将用户登录到 Game Center 时遇到问题。在应用程序完成加载后,我首先显示登录对话框。如果用户取消对话框。该按钮没有做任何事情 - 没有显示游戏中心对话框。我立即收到错误消息
错误代码:-
_authenticateUsingAlert:无法使用现有凭据对播放器进行身份验证。错误:错误域 = GKErrorDomain 代码 = 6“请求的操作无法完成,因为本地播放器尚未通过身份验证。” UserInfo={NSLocalizedDescription=请求的操作无法完成,因为本地播放器尚未通过身份验证
Social.localUser.Authenticate(success => {
if (success)
Debug.Log("success authenticate");
else
Debug.Log("Failed to authenticate");
});
解决方案
这是您问题的答案:https ://stackoverflow.com/a/21132075
重要提示:Game Kit 处理所有支持 Game Center 的游戏中退出 Game Center 的操作。如果玩家已经拒绝创建帐户,那么当您的游戏对玩家进行身份验证时,会被告知没有经过身份验证的玩家。播放器永远不会看到身份验证对话框。由于 Game Kit 在所有游戏中处理此过程,因此您的游戏不应包含自己的机制来禁用 Game Center 身份验证或请求玩家许可进行身份验证。相反,您的游戏应该在每次启动时简单地对玩家进行身份验证,并在身份验证完成时做出适当的响应。
推荐阅读
- docker - 添加 jar 后 Kubernetes Pod 崩溃
- python - 如何从python中的行中删除字母和空格?
- java - Vertx 3.9.0 是否支持 Redis Json?还有其他方法可以实现吗?
- numpy - Numpy叉积矩阵函数
- postgresql - PostgreSQL COPY 管道输出到 gzip 然后到 STDOUT
- flutter - 无法在 Firebase 存储上收听
- sharepoint - 基于另一个字段选择的 Sharepoint 隐藏/显示列不起作用
- jenkins - 在自由式作业中选择 git 分支的选择参数
- laravel - 在空 laravel 删除条件的加载模型
- r - 当列达到一定数量的行时,0 值将值更改为 Na