簡體   English   中英

從未調用過PFFacebookUtils loginWithPermissions塊

[英]PFFacebookUtils loginWithPermissions block never called

我正在使用facebook登錄測試應用程序。 我做了一個按鈕,當我點擊它時,Facebook頁面出現,在密碼之后它就消失了。 問題是永遠不會調用來自[PFFacebookUtils loginWithPermissions]的塊。 這樣我就不能預先形成我的segue。

我想我已經在Parse和Facebook上進行了所有配置。 所有類都在PrefixHeader中導入

Appdelegate方法已使用developer.facebook.com文檔中的信息進行了更新。

PrefixHeader PrefixHeader

AppDelegate中 AppDelegate中

我的Root View控制器類 AppDelegate中

經過很長時間我才明白了!

我不知道為什么,但我需要將AppDelegate代碼更改為

 - (BOOL)application:(UIApplication *)application
        openURL:(NSURL *)url
        sourceApplication:(NSString *)sourceApplication
        annotation:(id)annotation {
        // attempt to extract a token from the url
     return [FBAppCall handleOpenURL:url sourceApplication:sourceApplication withSession:[PFFacebookUtils session]];

}

而不是現在調用塊因為我添加了“withSession:[PFFacebookUtils session]”。

我不知道為什么我必須這樣做,因為在Facebook指南中它不是寫的。 如果有人能解釋我,我會很感激。

對於那些堅持使用Swift 1.x的人來說,這解決了我的問題...當前的parse-ios-fb指南說要使用

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool {
    println("open URL appdelgate callback")
    return FBSDKApplicationDelegate.sharedInstance().application(application,
        openURL: url,
        sourceApplication: sourceApplication,
        annotation: annotation)
}

但是做

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool {
    return FBAppCall.handleOpenURL(url, sourceApplication: sourceApplication, withSession:PFFacebookUtils.session())
}

作品。 Swift 1.2,Parse / ParseFacebookUtils 1.8.5,Facebook 4.3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM