authenticateWithCompletionHandler: 已弃用:首先在 iOS 6.0 中弃用

2023-11-22

我正在开发使用 Game Center 的游戏,我收到下一个警告;

...“authenticateWithCompletionHandler:”已弃用:首先在 iOS 6.0 中弃用

好吧,我搜索了一下,发现有新的代码用于验证本地用户,所以我更换了

旧代码:

- (void)authenticateLocalUser {

    if (!gameCenterAvailable) return;

    NSLog(@"Authenticating local user...");
    if ([GKLocalPlayer localPlayer].authenticated == NO) {
        [[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:nil];
    } else {
        NSLog(@"Already authenticated!");
    }
}

与新的:

- (void)authenticateLocalUser {

    if (!gameCenterAvailable) return;

    NSLog(@"Authenticating local user...");

    if ([GKLocalPlayer localPlayer].authenticated == NO) {

        GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer];
        [localPlayer setAuthenticateHandler:(^(UIViewController* viewcontroller, NSError *error) {
        //[localPlayer authenticateWithCompletionHandler:^(NSError *error) { OLD CODE!
            if(localPlayer.isAuthenticated) {
                //do some stuff
            }else {
                // not logged in   
            }
        })]; 
    } else {
        NSLog(@"Already authenticated!");   
    }   
}

除了一件事之外,一切都很好。如果用户未登录,则没有游戏中心登录表单。使用旧代码,如果用户未登录,它会显示游戏中心登录表单。

是否有任何我必须输入的额外代码或其他内容?

额外信息: - 横向模式 - 部署目标:6.0


是的,您必须在 iOS6 中手动显示登录表单,这使您可以更好地控制何时显示屏幕。尝试一下

localPlayer.authenticateHandler = ^(UIViewController *viewController,NSError *error) {
if (localPlayer.authenticated) { 
//already authenticated
} else if(viewController) {
[self presentViewController:viewController];//present the login form
} else {
//problem with authentication,probably bc the user doesn't use Game Center
} 
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

authenticateWithCompletionHandler: 已弃用:首先在 iOS 6.0 中弃用 的相关文章

随机推荐

  • 在 Android 操作系统中将 JPEG/PNG 图像转换为 TIFF 图像格式

    我正在开发一个应用程序 其中需要 TIFF 格式的图像 但在 Android 中 您可以将位图 图像转换为仅 JPEG PNG 图像 有没有在android上将JPEG PNG文件转换为TIFF格式的好方法 Android 不支持 java
  • matplotlib 颜色条的位置和大小

    我在用着quadmesh创建一个简单的极坐标投影图 这是一个最小的脚本 它基本上产生了我想要做的事情 from future import unicode literals import numpy as np import matplot
  • .NET 有 XmlEncode / XmlDecode 吗?

    有没有方法encoding and decoding XML在 NET 中 我似乎无法找到它们 并且想知道为什么它们不存在以及可以使用什么来代替 我需要对 XML 文档进行编码并将其传递给 Web 服务上的字符串参数 然后需要在另一端对其进
  • 检查 WPF DataGrid 单元是否有错误

    我在单元格上设置了验证 它按预期工作 在文本框周围放置红色突出显示并添加带有错误的工具提示 但是 如果我尝试访问 Validation GetHasError TheGrid 其中 TheGrid 是我的 DataGrid 它始终为 fal
  • 如何防止Web服务API中的并发?

    我们有三个网络服务 a b c 其中每个服务映射到一个方法 go 在一个单独的 Java 类中 ClassA ClassB ClassC 同一时间只能运行一项服务 即 b无法运行 a在跑 然而 由于这是一个 REST API 因此无法阻止客
  • 调试区域中显示的信息过多 - Xcode 8

    我刚刚升级到 Xcode 8 在构建和运行我的项目时 大量信息被打印到调试区域 这是一个示例 016 09 14 08 37 54 394736 SmartTapp 8645 112431 子系统 com apple network 类别
  • 与 getDerivedStateFromProps 中之前的 prop 进行比较

    想象一个具有 prop name 和 state elapse 的组件 new Component name gt Hi name It s been elapse seconds elapse 当 prop 时应重置为 0 name 变化
  • Java 导入与代码性能

    我想知道我是否包含了很多import在我的java程序中 它会影响我的代码的性能 例如 程序会变慢 背后的逻辑是import在Java中与include in C 它会影响我的代码的性能 例如 程序会变慢 不 它不会影响代码的性能 二进制文
  • 测量docker容器的执行时间

    我有一个名为my image启动命令并关闭 使用命令在容器中运行图像时docker run rm my image 是否可以测量容器的执行时间 Edit 我需要在容器执行后查看这些计时信息 因此我无法使用time命令 我以某种方式希望找到
  • 如何统计java中执行的字节码数量

    我要参加麻省理工学院的战斗代码竞赛 参赛者编写程序来控制互相战斗的机器人 问题是你的机器人每次只能执行一定数量的字节码 去年是每轮 10000 个 现在 一个简单的循环 喜欢 int i 0 i lt 100 i do nothing 根据
  • 在 C++ 中,类模板的显式特化定义应该放在哪里?

    根据 温度规格 5 对于给定的模板和给定的一组模板参数 一个明确的专业化在程序中最多定义一次 根据 基本 def odr and 类模板的显式 完整 特化的定义不能放在标头中 否则包含该标头的每个翻译单元中都有一个定义 因此整个程序中将有多
  • 如何在(子)模块中使用 __init__.py 定义命名空间?

    我的问题是关于编写 Python 3 x 包和 子 模块以及正确使用 init py文件来声明命名空间 我曾经用 C 编写代码 所以我喜欢使用很多单独的文件来组织项目 例如 imo 如果一个模块包含多个类 则每个类都应该位于单独的文件中 由
  • 安装和更新 Perl 模块为“通用”(x86_64、arm64)?

    是否可以安装和更新具有通用 x86 64 arm64 架构支持的 Perl CPAN 模块 如果是 那么如何 背景 在基于arm的macOS计算机上 可以为一个指定的架构安装Perl CPAN模块 如下所示 sudo cpan i Enco
  • WebStorm 和 PHPStorm 的区别

    我正在选择一个用于 Web 开发的 IDE 我想知道 WebStorm 和 PHPStorm 之间的区别是什么 我在 JetBrains 的网站上找不到任何要点 甚至 Google 也没有多大帮助 我现在所知道的是 PHPStorm 不像
  • 内联函数中的静态变量

    我有一个在头文件中声明和定义的函数 这本身就是一个问题 当该函数未内联时 使用该标头的每个翻译单元都会获得该函数的副本 并且当它们链接在一起时会出现重复 我通过使函数内联来 修复 这个问题 但恐怕这是一个脆弱的解决方案 因为据我所知 编译器
  • Scala Futures - 内置超时?

    我从官方教程参考文献中无法完全理解 futures 的一个方面 http docs scala lang org overviews core futures html scala 中的 future 是否有某种内置的超时机制 假设下面的示
  • 大量列的性能下降。派斯帕克

    我在处理 Spark 宽数据帧 大约 9000 列 有时更多 时遇到了问题 Task 通过groupBy和pivot创建宽DF 将列转换为向量并从 pyspark ml 处理为 KMeans 所以我制作了广泛的框架并尝试使用 VectorA
  • 如何使用 Visual Studio 2005 / resharper 自动向文件夹、命名空间或项目中的每个文件添加“using”语句

    我正在使用 resharper 进行大型重构 并且我不断从一个文件到另一个文件 并在 使用 部分中一遍又一遍地添加相同的名称空间 是否有办法向文件夹 命名空间或项目中的每个文件添加 using 语句 尽管有些文件不需要参考 但大多数文件都需
  • 使用 CriteriaBuilder 在 Java 中获取列表的 IllegalStateException

    总结一下 我有 3 个实体 主要的一个是名为 Rac 的实体 它包含 RacNatureza 列表 其中包含属性 Natureza Rac Entity Table name rac public class Rac Id Generate
  • authenticateWithCompletionHandler: 已弃用:首先在 iOS 6.0 中弃用

    我正在开发使用 Game Center 的游戏 我收到下一个警告 authenticateWithCompletionHandler 已弃用 首先在 iOS 6 0 中弃用 好吧 我搜索了一下 发现有新的代码用于验证本地用户 所以我更换了