[英]Facebook apprequests with 3.0 SDK
我正在使用Facebook iOS SDK 3.1.1,並且已經成功集成了許多Facebook功能。 堅持3.1.1,我正在使用登錄
[FBSession openActiveSessionWithPermissions:permission
allowLoginUI:bAllowLoginUI
completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {
[self sessionStateChanged:session state:state error:error];
}];
然后,我需要發送“ apprequests”,並且沒有在SDK 3.1中實現的新方法,因此我必須使用Facebook對象和FBDialog退回到已棄用的API。
但是,調用不贊成使用的對話框函數:
[m_pFacebook dialog:@"apprequests"
andParams:params
andDelegate:delegate];
會彈出FBDialog並提示用戶通過對話框再次登錄。 我需要直接進入apprequests對話框,而無需用戶再次輸入其憑據,而且我確信有辦法做到這一點,因為我已經在Diamond Dash和其他游戲中實現了它。
我嘗試過使用FBSession.activeSession.accessToken設置m_pFacebook.accessToken,並且還確保m_pFacebook.session充滿了FBSession的登錄會話
有人遇到過這個問題嗎?
經過一些調試后,發現Facebook * m_pFacebook對象的expirationDate尚未更新,因此_lastAccessTokenUpdate仍在[NSDate distantPast]中。 解決辦法是打電話
[m_pFacebook fbDialogLogin:session.accessToken expirationDate:session.expirationDate];
當sessionState更改為FBSessionStateOpen時
- (void) sessionStateChanged:(FBSession*)session state:(FBSessionState)state error:(NSError*)error {
switch ( state ) {
case FBSessionStateOpen:
[m_pFacebook fbDialogLogin:session.accessToken expirationDate:session.expirationDate];
break;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.