최근 내 Facebook 통합을 내 앱에 추가했으며 사용자가 앱을 다시 시작한 경우를 제외하고는 모든 것이 잘 작동합니다. 앱이 다시 시작될 때마다 Facebook은 승인 절차를 거쳐야합니다. 여기에는 Safari/Facebook으로 전환 한 다음 내 앱으로 다시 전환하는 작업이 포함됩니다. 어떻게하면 Facebook이 정보를 저장하게 할 수 있습니까? 아니면 지속적으로 재 인증하지 않도록 내 앱에 대한 담요 사용 권한을 얻을 수 있습니까?각 앱을 시작할 때마다 페이스 북은 항상 재 인증을 받았습니까?
facebook = [[Facebook alloc] initWithAppId:@"203604286395694" andDelegate:self];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([defaults objectForKey:@"FBAccessTokenKey"]
&& [defaults objectForKey:@"FBExpirationDateKey"]) {
facebook.accessToken = [defaults objectForKey:@"FBAccessTokenKey"];
facebook.expirationDate = [defaults objectForKey:@"FBExpirationDateKey"];
}
if (![facebook isSessionValid]) {
[facebook authorize:nil];
}
관련 페이스 북 위임 방법 : 여기
는 applicationDidFinishLaunchingWithOptions:
방법에서 내 코드입니다
- (void)fbDidLogin {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[facebook accessToken] forKey:@"FBAccessTokenKey"];
[defaults setObject:[facebook expirationDate] forKey:@"FBExpirationDateKey"];
[defaults synchronize];
}
- (void) requestDialogButtonClicked {
NSMutableDictionary* params =
[NSMutableDictionary dictionaryWithObjectsAndKeys:
@"invites you to check out cool stuff", @"message",
@"Check this out", @"notification_text",
nil];
[facebook dialog:@"apprequests"
andParams:params
andDelegate:self];
}
- (void)dialogDidComplete:(FBDialog *)dialog {
NSLog(@"dialog completed successfully");
}
Null이 아닌 값으로 인증이 호출되고 있습니다. 그러나'fbDidLogon'은 절대로 호출되지 않습니다. 나는 권한 부여 호출과 fbDidLogon 메소드 모두에 중단 점을 넣었지만 두 번째 것은 첫 번째 호출 이후에 히트되지 않습니다. – Jumhyn
@Malek_Jundi 님의 댓글보기 오류 콜백을 가져와야합니다. 그 didNotLogin 메서드와 NSLog를 구현하십시오. – danh