1

iOS アプリに「友達を選択」を追加しようとしています。ログインビューを設定しました。ログインしたら、フレンドピッカーを開きますが、空白になります。完了ボタンとキャンセル ボタンのあるテーブルが表示されますが、テーブルにフレンドがロードされていません。

- (IBAction)selectFriendsButtonAction:(id)sender {
    if (self.friendPickerController == nil) {
        // Create friend picker, and get data loaded into it.
        self.friendPickerController = [[FBFriendPickerViewController alloc] init];
        self.friendPickerController.title = @"Select Friends";
        self.friendPickerController.delegate = self;
    }
    [self.friendPickerController loadData];
    [self.friendPickerController clearSelection];
    [self presentViewController:self.friendPickerController animated:YES completion:nil];

}
4

3 に答える 3

1

フレンド ピッカー コントローラーを開く前に、これを呼び出して Facebook セッションがアクティブであることを確認します。

if (!FBSession.activeSession.isOpen) {
    // if the session is closed, then we open it here, and establish a handler for state changes
    [FBSession.activeSession openWithCompletionHandler:^(FBSession *session,
                                                         FBSessionState state,
                                                         NSError *error) {
        // Handle error
    }];
}
于 2013-03-19T15:32:27.923 に答える
0

Facebook SDK の残りの部分を十分に理解していても、その必要性に気付いていない可能性がある、注意しなければならないことが 2 つあります。

  1. ダイアログには、アプリもインストールしている友達のみが表示されます。
  2. ログインフロー中に user_friends パーミッションを要求する必要があります。

1. の場合は、既に持っているテスト ユーザーを作成または使用し、そのユーザーでアプリを実行して、アプリに基本的なアクセスを許可します ("インストール")。

2 の場合、そのアクセス許可をログイン フローに追加し、ログアウトして、テストしている送信者 (おそらく自分のユーザー) で再度ログインします。それでも許可を求めるメッセージが表示されない場合は、https経由でアプリをアンインストールします。 //www.facebook.com/settings/?tab=アプリケーション.

http://www.brianjcoleman.com/tutorial-get-facebook-friends-in-swift/では、これについていくつか説明しています。Facebook ドキュメント自体は、2 つの問題についてまったく言及していないか、埋もれています。

于 2014-12-14T05:55:15.003 に答える
0

「FBFriendPickerViewController」を使えば、このアプリを使っている友達も戻ってくるようです。Facebook ドキュメント: API Graph v2.0 以降、"me/friends" はアプリを使用している友達のみを返します。それがフレンドテーブルが空白の理由だと思います。

代わりに「FBTaggableFriendPickerViewController」を使用できる別のオプションがあります。ただし、アプリがデータを取り戻す前に、Facebook による審査を受ける必要があります。( https://developers.facebook.com/docs/graph-api/reference/v2.2/user/taggable_friends?locale=zh_TW )

于 2014-12-24T07:13:42.147 に答える