2012-09-18 99 views
1

我似乎無法找到關於如何打開包含fb 3.0的解析sdk的共享對話框的信息。我可以用facebook登錄,實際上找到了一種方法來發布對話框,但仍然希望有對話框,以便人們可以添加評論,並與Facebook上的圖像一起出來。這是我迄今爲止。 @「publish_stream」,@「publish_actions」讓我與發佈出來對話框如何使用parse.com和Facebook 3.0獲取共享對話框sdk

logInController.facebookPermissions = [NSArray arrayWithObjects:@"user_about_me",@"friends_about_me",@"publish_stream",@"publish_actions", nil]; 

這是發佈

PF_FBRequest *request = [PF_FBRequest requestForPostStatusUpdate:[self.Excerpt objectForKey:@"text"]]; 
       [request startWithCompletionHandler:^(PF_FBRequestConnection *connection, id result, NSError *error){ 
        NSLog(@"error %@",error); 

       }]; 

我發現代碼來打開從Facebook網站的對話框中,但我不知道如何獲得PF_Facebook對象的實例,所以我可以打開對話框。我可以嘗試做

PF_Facebook *fb = [[PF_Facebook alloc]initWithAppId:<#(NSString *)#> andDelegate:<#(id<PF_FBSessionDelegate>)#>; 

,但似乎並沒有是正確的,因爲我已經初始化此在的appdelegate

//更新 我能夠使用此代碼

得到對話框
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
            @"Facebook SDK for iOS", @"name", 
            @"Build great social apps and get more installs.", @"caption", 
            @"The Facebook SDK for iOS makes it easier and faster to develop Facebook integrated iOS apps.", @"description", 
            @"https://developers.facebook.com/ios", @"link", 
            @"https://raw.github.com/fbsamples/ios-3.x-howtos/master/Images/iossdk_logo.png", @"picture", 
            nil]; 
    //publishes text on facebook 
    PF_FBSession *session = [PFFacebookUtils session]; 

    PF_Facebook *fb = [[PF_Facebook alloc]initWithAppId:session.appID andDelegate:nil]; 
    [fb dialog:@"feed" andParams:params andDelegate:self]; 

但問題是,這人得到,即使他是在應用程序已經通過身份驗證對話框登錄頁面

任何sugg estions將不勝感激! 謝謝!

回答

5

要設置PF_Facebook對象,你還需要提供訪問令牌,併爲下面的有效期限信息:

PF_FBSession *session = [PFFacebookUtils session]; 
PF_Facebook *facebook = [[PF_Facebook alloc] initWithAppId:session.appID 
               andDelegate:nil]; 

// Store the Facebook session information 
facebook.accessToken = session.accessToken; 
facebook.expirationDate = session.expirationDate; 
4

而不是創建一個新的會話,你可以使用「臉譜」類的方法獲取已配置的PF_Facebook對象

PF_Facebook *facebook = [PFFacebookUtils facebook]; 
NSMutableDictionary *parameters = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"Check out this great app", @"message", nil]: 

[facebook dialog:@"apprequests" andParams:parameters andDelegate:nil]; 
+0

爲我完美工作!謝謝 – Andrew

+0

這仍然適合你們嗎?我發現無論會話和權限處於什麼狀態,我最終都會被要求通過「請求」對話框重新登錄。使用Marcus的方法,我可以避免提示,但最終會出現「錯誤10」,「訪問令牌不是使用單一登錄獲得的」。我正在使用Parse API的v1.1.29。 – jsleeuw

相關問題