メイン画面にFacebookのログインボタンがあります。そのボタンを使用して何度でもログインおよびログアウトでき、常に正常に動作します。次に、別のレイヤーに、私のスコアを Facebook で共有するためのボタンがあります。2 つのケースがあります。 ケース 1 は、ログインしている場合、スコアを共有します。ケース 2 は、ログインしていない場合、ログインする必要があることをユーザーに伝えます。これが私の共有ボタン コードです。
[FBRequestConnection startForPostStatusUpdate:message
completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
UIAlertView *alert;
NSLog(@"%@",error);
if (!error)
{
alert = [[UIAlertView alloc] initWithTitle:@"You score" message:@"has been published" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
}
else{
alert = [[UIAlertView alloc] initWithTitle:@"Login Failed" message:@"Please login to your facebook account" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
}
[alert show];
[alert release];
これはすべて期待どおりに機能しますが、上記の case2 から Facebook ログイン ボタンが存在するメイン画面に戻ると、ログイン ボタンをクリックすると、アクセス許可の Facebook ページが開きます。[OK] をクリックすると、アプリがクラッシュします。デリゲート メソッドに移動しますが、デリゲート メソッドに移動するloginViewShowingLoggedInUser
前にloginViewFetchedUserInfo
クラッシュします。その理由は何ですか?