0

現在、Facebook の友達の中で誰が私のアプリを使用しているかを特定しようとしています。私が知る限り、一般的な知恵は、グラフ API を使用し、フレンド リストを取得するときに「インストール済み」パラメーターを送信することです。これは私にとってはうまくいかないようで、どこが間違っているのか疑問に思っています。これは私のコードです:

まず、有効な権限:

_facebookPermissions = @[@"publish_stream", @"read_stream", @"friends_photos", @"user_photos"];

これで SLRequest がセットアップされました。

NSString *username = [[NSUserDefaults standardUserDefaults] objectForKey:@"fbUserID"];
    NSString *urlString = [NSString stringWithFormat:@"https://graph.facebook.com/%@/friends", username];

    NSURL *friendsList = [NSURL URLWithString:urlString];
    NSDictionary *friendsListParameters = @{@"fields": @"id,name,picture,installed"};

    SLRequest *getFriends = [SLRequest requestForServiceType:SLServiceTypeFacebook requestMethod:SLRequestMethodGET URL:friendsList parameters:friendsListParameters];

サンプル結果:

{
            id = 10000123456911;
            name = "Don Dobrian";
            picture =             {
                data =                 {
                    "is_silhouette" = 0;
                    url = "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-ash3/41664_100001237218111_2269_q.jpg";
                };
            };
        },

ご覧のとおり、パーミッションはほとんどすべてのものを取得します。しかし、「インストールされた」パラメーターが認識されたという兆候はまったくありません。だからここに私の質問があります.1つに対する答えは私の問題を解決します:

  1. これがあなたのやり方ですか?「インストール済み」ステータスを取得するために使用している権限は何ですか?
  2. iOS ソーシャル フレームワークを使用してこの情報を取得するより良い方法はありますか?
4

1 に答える 1