iOS 项目中体系结构 x86_64 的未定义符号

Undefined symbols for architecture x86_64 in iOS project

我正在尝试在我的 iOS 项目中使用 this Spotify SDK integration 的 React Native。

我收到以下错误:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_SPTAudioStreamingController", referenced from:
      objc-class-ref in libRCTSpotify.a(RCTSpotify.o)
  "_OBJC_CLASS_$_SPTAuth", referenced from:
      objc-class-ref in libRCTSpotify.a(RCTSpotify.o)
  "_OBJC_CLASS_$_SPTDiskCache", referenced from:
      objc-class-ref in libRCTSpotify.a(RCTSpotify.o)
  "_OBJC_CLASS_$_SPTRequest", referenced from:
      objc-class-ref in libRCTSpotify.a(RCTSpotify.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Libraries 文件夹中 RCTSpotify.xcodeproj 中的 Architectures 部分看起来与其他所有部分一样,我找不到任何关于 x86_64 的信息,并且此错误以前从未出现在项目中。

也许您尝试使用的 SDK 是为真实设备而不是模拟器构建的。请检查。

向上滚动并检查之前是否还有另一个错误,如下所示:

warning: skipping file '[FOLDER_PATH]/node_modules/rn-spotify-sdk/ios/external/SpotifySDK' (unexpected file type 'folder' in Frameworks & Libraries build phase)

如果是这样,你确实喜欢我,直接按照README。您真正想要做的是在该文件夹 中添加来自 的三个框架,而不仅仅是 SpotifySDK 文件夹。

它们是 SpotifyMetadata.frameworkSpotifyAuthentication.frameworkSpotifyAudioPlayer.framework。如果你添加这三个,那么它应该工作。它们在 /node_modules/rn-spotify-sdk/ios/external/SpotifySDK/ 文件夹中。

最终应该是这样的: