Parse を使用して PFLogInViewController を作成する単一ビュー アプリケーションがあります。BeaconViewController にアクセスする前に、ユーザーは Facebook で認証する必要があります。これは正常に機能しています。私の問題はログアウト部分にあります。ユーザーのセッションが破棄された後、再度表示する必要がありPFLogInViewControllerます。にポップすることでこれを達成しようとしましたRootViewControllerが、これは問題を解決していません。
このスレッドとこのスレッドを参照しましたが、やはりうまくいきませんでした。
ここBeaconViewController.mに認証とログアウトのロジックがあります
-(void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
FBRequest *request = [FBRequest requestForMe];
[request startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (!error) {
[self dismissViewControllerAnimated:YES completion:nil];
[self pictureRequest];
}
else if (error) {
NSLog(@"facebook session was invalid");
[self logoutButtonAction:nil];
PFLogInViewController *login = [[PFLogInViewController alloc] init];
login.fields = PFLogInFieldsFacebook;
login.delegate = self;
NSArray *permissionsArray = @[ @"user_about_me", @"user_relationships", @"user_birthday", @"user_location"];
login.facebookPermissions = permissionsArray;
[self presentViewController:login animated:YES completion:nil];
}
else {
NSLog(@"Some other error: %@", error);
}
}];
}
- (IBAction)logoutButtonAction:(id)sender {
[PFUser logOut];
[self.navigationController popToRootViewControllerAnimated:YES];
}
