ios - Interface Builder 文件中的未知类 FBSDKLoginButton

标签 ios objective-c facebook facebook-ios-sdk xcode-storyboard

我的全新项目遇到了一个非常令人沮丧的构建问题。我正在尝试集成 Facebook iOS SDK,但由于某种原因,我遇到了一些奇怪的错误。尝试使用 FBSDKLoginKit 显示 FBSDKLoginButton 时在 Storyboard View 上。

当我尝试 #import <FBSDKLoginKit/FBSDKLoginKit.h> 时,第一个提示是错误的“错误” (但它只在编辑器中显示为错误;它仍然可以正常编译):

“无法构建模块 FBSDKLoginKit。”

奇怪的是,在修改了一些与模块相关的build设置后,这个“错误”消失了,即使我将它们设置回原始值也是如此。

同样有趣的是,如果我明确引用 FBSDKLoginButton我的 View Controller 中的类(例如以编程方式添加按钮),然后基于 Storyboard 的实例化工作正常。所以我猜这一定是某些链接器问题或其他问题,但不可否认我不是这方面的专家。

Facebook SDK 文档都没有提到我能找到的这个问题,这很奇怪,因为正如我所说,这是一个全新的干净项目。

最佳答案

我的错,the documentation does mention this , 并建议通过引用 application 中的 FBSDKLoginButton 类来解决这个问题 didFinishLaunchingWithOptions:。 (坦率地说,在哪里引用它并不重要,所以在任何地方感觉最舒服。对我来说, View Controller 更有意义。)

- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.
    [FBSDKLoginButton class];
    ...
    return YES;
}

关于ios - Interface Builder 文件中的未知类 FBSDKLoginButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30311246/

相关文章:

ios - 使用 Swift 离开 View Controller 后自动关闭

ios - Xcode 11.4/iOS13.3.1 无法检查应用程序包

ios - UITextView 控制换行符

ios - MicrosoftMaps,如何使用 Bing map 框架在 Appstore 上上传应用程序时解决 "Unexpected CFBundleExecutable Key"错误

ruby-on-rails-3 - 在 FB API 调用中“无法代表该用户调用 API”

ios - Xcode 6 键盘快捷键、提示和技巧

ios - 在 Storyboard中,Popoverview 不接收委托(delegate)

objective-c - Swift 数组到 AnyObject 错误

php - 使用 PHP 或 Javascript 在用户授权后保存 Facebook 网页

iOS Facebook 登录对话框由于某些原因没有关闭