swift 5 中没有这样的模块“FacebookCore”

S.H*_*san 7 xcode facebook-login cocoapods swift facebook-sdk-4.x

我正在做自己的测试应用程序,作为 iOS 开发学习过程的一部分(在 Xcode 11.0 上使用 swift 5)。我想在我的登录页面上添加 Facebook 登录,但在导入库时我一直收到No such module 'FacebookCore'消息。

在此输入图像描述

我按照developer.facebook上的说明尝试使用cocoaPods实现SDK,这是我的Podfile

 # Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'TestApp' do

  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!

  # Pods for TestApp
  pod 'FBSDKCoreKit'
  pod 'FBSDKLoginKit'

  target 'TestAppTests' do
    inherit! :search_paths
    # Pods for testing
  end

  target 'TestAppUITests' do
    # Pods for testing
  end

end
Run Code Online (Sandbox Code Playgroud)

按照 Facebook 的指示执行 pod install 并在 info.plist 中添加数据后,我可以清楚地看到该框架已在Link Binary With Libraries部分中链接

在此输入图像描述

但我似乎仍然无法导入 FacebookCore 或 FacebookLogin。

PS:我尝试了几种解决方案,例如:

1-运行 .xcworkspace 而不是 .xcodeproj

2-即使显示错误也构建项目(有人说它会消失)

但它们都不起作用。

我怀疑问题出在我的框架搜索路径中,但为什么它首先会出错呢?所以我可能是错的,无论如何,这是我的搜索路径的屏幕截图:

在此输入图像描述

S.H*_*san 14

所以事实证明我必须导入FBSDKCoreKit而不是FacebookCore,这在 facebook 的文档中没有提到。并且应该严格使用.xcworkspace文件导入,该文件也没有在文档中提及。

  • 仍然是 2022 年的解决方案。 (3认同)

AM_*_*AM_ 6

使用 FBSDKCoreKit 而不是 FacebookCore

这是正确的 pod

  pod 'FBSDKCoreKit'
  pod 'FBSDKLoginKit'

Run Code Online (Sandbox Code Playgroud)

你的进口应该是

import FBSDKCoreKit
import FBSDKLoginKit
Run Code Online (Sandbox Code Playgroud)

在之前的版本中,FacebookCoore 作为 FBSDKCoreKit 类的包装器。Facebook 自 v5.x 以来似乎已删除此内容。