【问题标题】:Unable to Compile Parse + Facebook SDK (Apple Mach-O Linker Error)无法编译 Parse + Facebook SDK(Apple Mach-O 链接器错误)
【发布时间】:2015-07-11 03:46:06
【问题描述】:

我正在尝试将 Facebook SDK 添加到我的 iOS Parse 项目。我正在尝试

我按照设置说明here

在我的桥接头中我添加了:

#import <FBSDKCoreKit/FBSDKCoreKit.h>
#import <FBSDKLoginKit/FBSDKLoginKit.h>
#import <ParseFacebookUtilsV4/PFFacebookUtils.h>

到目前为止一切正常,但是当我尝试添加 loginToFacebook 代码时,我收到 Apple Mach-o Linker Error

   var permissionArray = ["user_about_me","user_relationships","user_relationships","user_location"];

    PFFacebookUtils.logInInBackgroundWithReadPermissions(permissionArray) { (user: PFUser?, error: NSError?) -> Void in
        if (user == nil) {
            println("Canceled the Facebook login.");
        } else if (user!.isNew) {
            println("User signed up and logged in through Facebook!");
        } else {
            println("login through Facebook");
        }
    } 

知道我做错了什么吗?

【问题讨论】:

    标签: ios facebook parse-platform linker-errors


    【解决方案1】:

    我已经完成了 parse+fb ,这就是我所做的:

    我的桥头:

     #import <FBSDKCoreKit/FBSDKCoreKit.h>
     #import <FBSDKLoginKit/FBSDKLoginKit.h>
     #import <Parse/Parse.h>
     #import <Parse/PFObject+Subclass.h>
     #import <ParseUI/ParseUI.h>
     #import <ParseFacebookUtilsV4/PFFacebookUtils.h>
     #import <Bolts/Bolts.h>
    

    我的构建阶段截图

    在 AppDelegate.swift 中:

        func application(application: UIApplication,
        openURL url: NSURL,
        sourceApplication: String?,
        annotation: AnyObject?) -> Bool {
            return       FBSDKApplicationDelegate.sharedInstance().application(application,
                openURL: url,
                sourceApplication: sourceApplication,
                annotation: annotation)
    }
    
    
    
        func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
        // Override point for customization after application launch.
        Parse.enableLocalDatastore()
    
        // Initialize Parse.
        Parse.setApplicationId("",
            clientKey: "") 
        return true
    }
    

    在我的 LoginViewController 中,我有 IBoulet 用于登录按钮

        var permissions = [ "public_profile", "email", "user_friends" ]
    
        @IBAction func facebookLogin(sender: AnyObject) {
        PFFacebookUtils.logInInBackgroundWithReadPermissions(permissions,  block: {  (user: PFUser?, error: NSError?) -> Void in
            if let user = user {
                if user.isNew {
                    println("User signed up and logged in through Facebook!")
    
                } else {
                    println("User logged in through Facebook!")
    
                }
            } else {
                println("Uh oh. The user cancelled the Facebook login.")
            }
        })
    }
    

    如果您仍有问题,请告诉我

    【讨论】:

    • 感谢您的回答。我已经弄清楚出了什么问题,我不得不从构建阶段删除“ParseFacebookUtils.framework”
    猜你喜欢
    • 2013-12-08
    • 2014-04-06
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    相关资源
    最近更新 更多