就像标题中所说的那样,这是一个错误还是真的有可能?我使用[FBSDKAccessToken currentAccessToken].tokenString
来检查现有的Facebook会话是否存在,然后再使用[FBSDKProfile currentProfile].userID
来获取会话的userId。
但是有时我遇到[FBSDKAccessToken currentAccessToken].tokenString
有一个值,但是[FBSDKProfile currentProfile]
是nil。
我将此用于我的应用程序的自动登录功能。
感谢您的答复!
所以我有这个代码片段:
if ([FBSDKAccessToken currentAccessToken].tokenString){
//proceed to auto login since Facebook is still logged in
NSLog(@"Facebook user id: %@",[FBSDKProfile currentProfile].userID)
}
该日志的返回为零。
最佳答案
if ([FBSDKAccessToken currentAccessToken].tokenString) {
[FBSDKProfile enableUpdatesOnAccessTokenChange:YES];
NSLog(@"Facebook user id: %@",[FBSDKProfile currentProfile].userID);
}
您需要调用
[FBSDKProfile enableUpdatesOnAccessTokenChange:YES]
,以便它自动观察[FBSDKAccessToken currentAccessToken]
的变化