2011-05-26 27 views
6

我剛剛開始使用Facebook SDK for iOS,並徹底檢查了文檔和其他幫助,但不能成功。Facebook iOS授權和發佈沒有對話框?

我開始了一個新的基於視圖的應用程序,並按照文檔中的建議進行授權。每次我啓動應用程序切換到Facebook應用程序(我已經安裝在我的iPhone上),並說已經授權,按OK。我怎樣才能反覆地做到這一點?

我也曾嘗試發帖到Facebook沒有對話框。控制檯告訴我一個請求,但然後發生錯誤(不會崩潰,但didFailWithError告訴我)。

無論如何,我還沒有發佈任何我的代碼,因爲它似乎相對簡單,所以如果有人知道如何做到這一點,我會大量讚賞任何幫助,甚至可能是代碼示例。

謝謝。

+0

嘿,是否有可能分享圖像沒有對話?請儘快恢復 – Abha 2017-12-28 06:44:25

回答

9

你錯過了你的委託一個關鍵點,你必須自己保存會話數據

- (void)fbDidLogin { 
    // store the access token and expiration date to the user defaults 
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    [defaults setObject:facebook.accessToken forKey:ACCESS_TOKEN_KEY]; 
    [defaults setObject:facebook.expirationDate forKey:EXPIRATION_DATE_KEY]; 
    [defaults synchronize]; 
} 

然後當你初始化的Facebook,你會做以下

facebook = [[Facebook alloc] initWithAppId:kAppId]; 
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
facebook.accessToken = [defaults objectForKey:ACCESS_TOKEN_KEY]; 
facebook.expirationDate = [defaults objectForKey:EXPIRATION_DATE_KEY]; 

最後,如果你想發表沒有對話框,你會這樣做

NSString *message = @"Visit my blog http://effectivemobility.blogspot.com/"; 
NSArray *obj = [NSArray arrayWithObjects:message, nil]; 
NSArray *keys = [NSArray arrayWithObjects:@"message", nil]; 

// There are many other params you can use, check the API 
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjects:obj forKeys:keys]; 

[facebook requestWithGraphPath:@"me/feed" andParams:params andHttpMethod:@"POST" andDelegate:nil]; 

我希望臨時t幫助

+0

我添加了一些關於發佈沒有對話框到我的答案 – arclight 2011-05-26 21:05:32

+0

偉大的博客和tableview教程。實際上可能會使用它。沒有對話框發佈代碼沒有成功,它不會崩潰,但不會做任何事情。也只是爲了確保我獲得授權,我複製了你的代碼,但是我得到了錯誤,說明了鍵:ACCESS_TOKEN_KEY和EXPIRATION_DATE_KEY被聲明。當然,他們不需要像我們只是創造一把鑰匙一樣? – 2011-05-26 21:54:05

+0

我試圖發佈時返回這個錯誤:facebookErrDomain錯誤10000 – 2011-05-26 22:25:22

相關問題