2013-01-08 31 views
0

嗨我正在開發一個應用程序。在應用程序是可以唱歌與Facebook或不...在應用程序的幾個地方,你可以分享你自己的時間表上的東西。如何處理在Facebook會話ios sdk

我跟着Facebook提供的美味示例,登錄工作正常...但是當我必須共享東西時,我不知道是否有必要或不要檢查會話是否處於活動狀態調用FBRequestConnection方法發佈到fb。

處理這個問題的最佳方法是什麼?因爲所有的身份驗證都是在代理中調用open session方法,所以...我必須從應用程序的任何位置調用此方法?我怎麼回到我之前撥打認證方法的地方...我確定必須有某種類型的顧客可以使用,但我找不到哪一個......

任何想法?

謝謝!

回答

1

使用這樣的代碼塊來確保會話是開放的,這很重要,因爲如果用戶不會,你的應用將崩潰。然後你需要在FBRequestConnection中擁有OpenGraph對象。

if (FBSession.activeSession.isOpen) { 
     [[FBRequest requestForMe] startWithCompletionHandler: 
     ^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *user, NSError *error) { 
      if (!error) { 
       self.nameString = user.name; 
       self.profileImage.profileID = user.id; 
       self.userName = user.username; 
       [self.tableView reloadData]; 
      } 
     }]; 
    } 
} 

**對於低於您的評論:**

好吧,那麼也許彈出一個UIAlertView要求用戶登錄到Facebook上。如果選擇是,然後像做

AppDelegate *appDelegate = [UIApplication sharedApplication].delegate; 
[appDelegate openSessionWithAllowLoginUI:YES]; 

假設你的AppDelegate看起來美味。

+0

好的,但我的問題是更一般的,如何處理打開會話,如果用戶沒有記錄?因爲如果它沒有記錄,我必須在代理中調用一個方法,然後如何返回我離開的位置? – Andres

+0

查看編輯答案。我希望這就是你要找的! – jakenberg