繁体   English   中英

PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(launchOptions)给出编译错误

[英]PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(launchOptions) giving compilation error

我正在尝试将facebook登录集成到我的解析应用程序中。 我按照解析教程中提到的每一步进行操作。 在下面的代码中,我收到编译错误。

 func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    // Override point for customization after application launch.
    line1: Parse.setApplicationId("xxx", clientKey: "yyy")
    line2: PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(launchOptions)       
    line3: PFAnalytics.trackAppOpenedWithLaunchOptions(launchOptions)
    line4: return true
}

第3行 ,我收到错误:

可选类型' [NSObject:AnyObject] '的值[NSObject:AnyObject]包; 你的意思是用' ! '或' ? “?

如果我使用'手动打开它! ',因为launchOptions可能是零,我得到:

致命错误:在展开Optional值时意外发现nil

如果我检查无,我得到:

NSInternalInconsistencyException ',原因:'你必须通过调用+initializeFacebookWithApplicationLaunchOptions初始化PFFacebookUtils

知道怎么解决吗?

这是ParseSDK中的一个错误。 在Parse修复​​此问题之前,您可以在PFFacebookUtils.h头文件中更改初始化函数声明

1)转到PFFacebookUtils.h

2)改变:

  • (void)initializeFacebookWithApplicationLaunchOptions:(NSDictionary *)launchOptions;

至:

  • (void)initializeFacebookWithApplicationLaunchOptions :( PF_NULLABLE NSDictionary *)launchOptions;

这个答案由Kiarash Akhlaghi提供,网址是https://developers.facebook.com/bugs/1462780714012820/

问题是ParseSDK的一个错误,它不接受nil launchOptions

根据Roger Ingouacka在https://developers.facebook.com/bugs/1462780714012820/提供的答案

    if let launchOptions = launchOptions {
        PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(launchOptions)
    } else {
        PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions([NSObject:AnyObject]())
    }

注意使用

[NSObject:AnyObject]()

这个问题一直存在,直到我更新到Parse库1.8.1

我尝试调整PFFacebookUtils.h以及其他很多东西,但这并没有解决它。 这让我疯了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM