3

Facebook SDK とParseを使用しています。

ユーザーのメール、イベント、およびその友人のイベントに関する追加のリクエストを送信しています。

私はこの情報を正常に受け取りましたが、iOS の Facebook システムにログインしているユーザーは、許可を要求するとこのポップアップを受け取ります。

FBポップアップ

彼らはすでに Facebook に (設定アプリ経由で) ログインしており、リクエストを承認するメッセージを受け取っているだけであることに注意してください。

ご覧のとおり、基本的なプロフィールとフレンド リストに関する情報が繰り返され (FB ログインではデフォルトで表示されます)、電子メールについても言及されていません。Apple や FB がこの種の過ちを犯したとは思えないので、それは私に関係があると思います。FB と Parse を使用してアクセスをリクエストする方法を次に示します。

    // The permissions requested from the user
    NSArray *permissionsArray = @[ @"email, user_events, friends_events"];

    // Login PFUser using Facebook
    [PFFacebookUtils logInWithPermissions:permissionsArray block:^(PFUser *user, NSError *error) {
        [activityIndicator stopAnimating]; // Hide loading indicator

        if (!user) {
            if (!error) {
                NSLog(@"Uh oh. The user cancelled the Facebook login.");
            } else {
                NSLog(@"Uh oh. An error occurred: %@", error);

            }
        } else if (user.isNew) {
            NSLog(@"User with facebook signed up and logged in!");
            [self.delegate ViewWasDismissed];
            [self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
        } else {
            NSLog(@"User with facebook logged in!");
            [self.delegate ViewWasDismissed];
            [self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
        }
    }];

繰り返しますが、このリクエストは機能します。したがって、何が間違っているのか想像できませんが、メッセージは奇妙です。何か案は?

編集: iOS Facebook システムからアカウントを削除し、アプリから直接リクエストしてみました。今回はこんなメッセージが。

成功画像

ここで、ユーザーは FB アプリを介して facebook にログインし、単にこの (正しい) メッセージを取得して許可を受け入れることに注意してください。

これは、Apple の Facebook システムの何らかのバグですか?

4

1 に答える 1

1

これは、iOS で発生する正しい動作です。iOS 6 以降、Apple は Facebook をデバイスに統合しました。したがって、ユーザーは設定ページから Facebook にログインできます。以下は、あなたの混乱を説明するシナリオです。

シナリオ 1: 設定ページから Facebook にログイン

アプリは、デバイスから Facebook アカウントがあればそれを自動的に検出し、UIAlertView を使用してアクセス許可の要求を求めます。これは、最新の SDK を使用している場合にのみ発生します。Facebook が iOS 用にリリースした SDK にこれが含まれているため、よくわかりません。

シナリオ 2: 設定ページから Facebook にログインしていない (古い方法)

デバイスにインストールされている場合、アプリは Facebook アプリに誘導します。それ以外の場合は、Facebook モバイル ページを開いた状態で Safari に移動し、アプリに必要なアクセス許可を求めます。

この助けを願っています:)

于 2014-05-02T05:48:42.560 に答える