0

このようにコンソールに出力を表示している配列(結果)があります。Facebookのマルチクエリ出力として結果を取得しています。これが結果の定義です。

-(void)request:(FBRequest*)request didLoad:(id)result {

NSLog(@" 結果は %@",結果);

}

私のマルチクエリ形式はこちらです。

NSString* fql1 = [NSString stringWithFormat:@"select uid,username,name from user where uid == %lld", _session.uid];

NSString* fql2 = [NSString stringWithFormat:@"SELECT likes,message FROM stream WHERE source_id = %lld limit 50", _session.uid];

NSString* クエリ = [NSString stringWithFormat:@"{\"UserRecord\":\"%@\",\"WallData\":\"%@\"}",fql1,fql2];

NSDictionary* params = [NSDictionary dictionaryWithObject:queries forKey:@"queries"];

[[FBRequest requestWithDelegate:self] call:@"facebook.fql.multiquery" params:params];

result is (

{

"fql_result_set" =  (

                {

        name = "My Login Name";

        uid = 1000024646062353;

        username = myuserid;

    }

);

name = UserRecord;

},

{

"fql_result_set" =   (

                {

        likes =  {

            "can_like" = 1;

            count = 2;

            friends =  (

                         {
                    uid = 100002483363608;

                }

            );

  href = "http://www.facebook.com/browse/?type=likes&id=108202343353";

 sample =  (

            );
            "user_likes" = 1;

        };

        message = "This wall post is not from application.";
  },


);

name = WallData;

}

)

「メッセージ」値のみを保持する別のものと、メッセージで尊重される「カウント」値を保持するものをフェッチしたいと考えています。これらの値を上記の配列出力からどのように分離しますか

4

1 に答える 1

1

編集されたバージョン:

NSString *messageString = [[[[result objectAtIndex:1]objectForKey:@"fql_result_set" ] objectAtIndex:0] objectForKey:@"message"];
NSnumber *countNumber = [[[[[result objectAtIndex:1]objectForKey:@"fql_result_set" ] objectAtIndex:0] objectForKey:@"likes"] objectForKey:@"count"];
于 2011-07-07T07:50:05.190 に答える