2012-06-04 2 views
5

私はFacebookに以下の簡単なリクエストをしています。私の目標は、すべてのユーザーのフォトアルバムの名前をつかむことです。そして、iOS用Facebookフォトアルバムを入手するには?

[[AppDelegate sharedDelegate].facebook requestWithGraphPath:@"me/albums" andDelegate:[AppDelegate sharedDelegate]]; 

、私は、このようなのようなサーバからのJSONレスポンスを取得:

data =  (
      { 
     "can_upload" = 1; 
     count = 4; 
     "cover_photo" = 321491374598618; 
     "created_time" = "2012-06-04T21:46:23+0000"; 
     from =    { 
      id = 100002132746588; 
      name = "Owner...."; 
     }; 
     id = 321491371265285; 
     link = "http://www.facebook.com/album.php?fbid=321491371265285&id=100002132746588&aid=73680"; 
     name = "Photos"; 
     privacy = custom; 
     type = normal; 
     "updated_time" = "2012-06-04T22:08:39+0000"; 
    }, 
      { 
     "can_upload" = 0; 
     count = 1; 
     "cover_photo" = 318401854907570; 
     "created_time" = "2012-05-31T00:00:35+0000"; 
     description = "Which Friend Stalks You the Most?"; 
     from =    { 
      id = 100002132746588; 
      name = "Owner...."; 
     }; 
     id = 318401848240904; 
     link = "http://www.facebook.com/album.php?fbid=318401848240904&id=100002132746588&aid=73163"; 
     name = "Which Friend Stalks You the Most?"; 
     privacy = friends; 
     type = normal; 
     "updated_time" = "2012-05-31T00:00:36+0000"; 
    }, 

などなどを。

NSLog(@"%@", [result objectForKey:@"name"]); 

私はnullを取得する:問題は、私がデータを解析しようとすると、です。データが返されたNSDictionaryが、集中するエントリがnameであることがわからないため、これが起こっていると仮定します。 のすべての名前を取得するようにデータを解析するにはどうすればいいですか?アルバムですか?

+0

私の答えを読むのhttp .....あなたのソリューションを取得することができる:あなたの応答のための//stackoverflow.com/questions/30207465/ios-facebook-album-photos-picker/31789234#31789234 –

答えて

3

"result"は実際には辞書の配列なので、配列をループして配列の各要素から名前を取得します。

for (NSDictionary *anAlbum in [result objectForKey:@"data"]) { 
    NSLog(@"%@", [anAlbum objectForKey:@"name"]); 
} 
+0

感謝を。私は上記のコードを試してみましたが、それは意味がありますが、 '[__NSCFString objectForKey:]:インスタンス0x898d320に送られたセレクタが認識できませんでした。これは、解析されたときのように、各辞書は実際には 'NSCFString'です。 –

+0

このコードを実行し、出力を投稿してください:for(NSDictionary * anAlbum in result){ NSLog(@ "%@"、anAlbum); } –

+0

出力は 'data'、次に' paging'の新しい行です。 'data'はJSON出力の一番上にあるエントリで、' paging'は一番下にあります。 –

関連する問題