4

尝试使用 Xcode 7 Beta 4 在实际 iPhone(iOS 版本 8.4)上运行他们的应用程序时,是否有人遇到此问题?

dyld:库未加载:/System/Library/Frameworks/GameCenter.framework/GameCenter 引用自:/private/var/mobile/Containers/Bundle/Application/CC713E5A-7839-43F1-9AEB-932AE2A3DF8A/.... 原因:找不到图片

供您参考,在我切换到 Xcode 7 之前,它一直在正常工作...

4

3 回答 3

2

在 Project Settings->Build Settings 中,将新的 iOS 9 GameCenter 库和旧的 GameKit 库都链接起来,然后重试。您可以通过将“状态”指定为“可选”来弱链接它们。

在此处输入图像描述

你仍然需要旧的,以防你在比 9 更旧的 iOS 上运行,它仍然需要链接的 GameKit 存根库,因为它不知道适用于 iOS 9 的新 GameCenter 库。

也可能需要改变

#import <GameKit/GameKit.h>

#import <GameCenter/GameCenter.h>

如果我不得不猜测这种变化可能只是因为 Apple 继续添加更多面向游戏的库(Spritekit、Scenekit、Replaykit 等)而使用了一个不太通用的库名称,那么将主要的 GameCenter 库从 GameKit 重命名为 GameCenter 是有意义的。

于 2015-08-03T19:53:39.670 回答
1

对我来说,它在 iOS 8.4 和 iOS 9 上运行良好,对上述建议进行了以下修改:

  • 不要更改您的代码,只需坚持#import < GameKit/GameKit.h >
  • 使用 XCode 7 构建时,添加 GameCenter.framework(弱链接/可选)并且不要为 GameKit.framework 更改此选项(必需)

而已。

如果 XCode7 为您提供有关 GameKit.Framework 的链接器错误,请返回 XCode 6.4 并重建项目(之前在文件检查器中禁用 GameCenter.framework 的目标成员资格)。然后回到 XCode 7 - 链接器错误消失了。

于 2015-08-04T19:00:36.500 回答
0

看起来这个问题在 XCode Beta 5 中消失了。有人确认一下吗?

于 2015-08-08T18:36:01.803 回答