2012-01-02 91 views
2

我正在Iphone工作。我已经完成了几乎所有在iPhone应用程序中进行foursquare集成所需的工作。 现在我试图在此应用程序中添加Venue搜索功能。来自foursquare场地搜索的iphone-parse响应

 code-: 

    NSMutableString *url=[[NSMutableString alloc] initWithFormat:@"https://api.foursquare.com/v2/venues/search?ll=26.8606200,75.761608&client_secret=XXXXXX&client_id=XXXXXX"]; 
    NSLog(@"%@",url); 
    NSURL *url1=[[NSURL alloc] initWithString:[url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 
    NSLog(@"%@",url1); 
    NSDictionary *dicVenue=[self objectWithUrl:url1]; 
    NSLog(@"%@",dicVenue); 



This is my response for foursquare Venues search:- 
of this line-- NSLog(@"%@",dicVenue); 


    groups =  (
      { 
     items =    (
          { 
       categories =      (
              { 
         icon = "https://foursquare.com/img/categories/education/default.png"; 
         id = 4bf58dd8d48988d1a8941735; 
         name = "General College & University"; 
         parents =        (
          "Colleges & Universities" 
         ); 
         pluralName = "General Colleges & Universities"; 
         primary = 1; 
         shortName = "Other - Education"; 
        } 
       ); 
       contact =      { 
       }; 
       hereNow =      { 
        count = 0; 
       }; 
       id = 4ed0c8f48231b9ef88fe5f09; 
       location =      { 
        distance = 529; 
        lat = "26.857954980225713"; 
        lng = "75.76602927296061"; 
       }; 
       name = "Banayan Tree School"; 
       stats =      { 
        checkinsCount = 5; 
        tipCount = 0; 
        usersCount = 4; 
       }; 
       verified = 0; 
      }, 
          { 
       categories =      (
              { 
         icon = "https://foursquare.com/img/categories/food/default.png"; 
         id = 4bf58dd8d48988d1c4941735; 
         name = Restaurant; 
         parents =        (
          Food 
         ); 
         pluralName = Restaurants; 
         primary = 1; 
         shortName = "Other - Food"; 
        } 
       ); 
       contact =      { 
       }; 
       hereNow =      { 
        count = 0; 
       }; 
       id = 4ea2e30ce3008f7d9243bfb5; 
       location =      { 
        city = Jaipur; 
        distance = 73; 
        lat = "26.8599860034498"; 
        lng = "75.76141358915882"; 
        state = Rajasthan; 
       }; 
       name = Vyanjan; 
       stats =      { 
        checkinsCount = 2; 
        tipCount = 0; 
        usersCount = 2; 
       }; 
       verified = 0; 
      }, 
          { 
       categories =      (
              { 
         icon = "https://foursquare.com/img/categories/arts_entertainment/movietheater.png"; 
         id = 4bf58dd8d48988d180941735; 
         name = Multiplex; 
         parents =        (
          "Arts & Entertainment", 
          "Movie Theaters" 
         ); 
         pluralName = Multiplexes; 
         primary = 1; 
         shortName = Cineplex; 
        } 
       ); 
       contact =      { 
       }; 
       hereNow =      { 
        count = 0; 
       }; 
       id = 4eda5812be7be28337a34e1d; 
       location =      { 
        address = "Mansarovar, Jaipur, Rajasthan"; 
        city = Jaipur; 
        distance = 1439; 
        lat = "26.849646795110605"; 
        lng = "75.76927853413078"; 
        state = Rajasthan; 
       }; 
       name = "Galaxy Cinema Hall"; 
       stats =      { 
        checkinsCount = 8; 
        tipCount = 2; 
        usersCount = 6; 
       }; 
       verified = 0; 
      }, 

请告诉我怎么去venueId,venueName,venueAddress等

请帮我先生。我真的需要你的帮助。我在等你明智的答复。

预先感谢您。

+0

iamsult请帮助我,我是新的iPhone开发,我想上述解析response.to获得场地ID,姓名,地址等 – priya 2012-01-02 13:28:31

回答

1

您可以使用json解析器轻松解析值。查看Foursquare场地搜索分析的以下代码。

-(NSMutableArray*)returnVenuesDetails:(NSDictionary*)result{ 
    NSArray *groupsArray = [[(NSDictionary*)result objectForKey:@"response"] objectForKey:@"groups"]; 

       NSArray *itemsArray; 
       if([groupsArray count] > 0){ 
        itemsArray = [[groupsArray objectAtIndex:0] objectForKey:@"items"]; 

        NSMutableArray *resultArray = [NSMutableArray array]; 
        if([itemsArray count] > 0){ 
         for (int i=0; i<[itemsArray count]; i++) {  

          NSMutableDictionary *resultDictionary=[[NSMutableDictionary alloc] init]; 

          NSString *venueId = [[itemsArray objectAtIndex:i] objectForKey:@"id"]; 
          NSString *venueName = [[itemsArray objectAtIndex:i] objectForKey:@"name"]; 
          [resultDictionary setObject:venueId forKey:@"venueId"]; 
          [resultDictionary setObject:venueName forKey:@"venueName"]; 

          //Get Stats details 
          NSDictionary *stats = [[itemsArray objectAtIndex:i] objectForKey:@"stats"]; 
          NSString *checkinsCount = [stats objectForKey:@"checkinsCount"]; 
          NSString *tipCount = [stats objectForKey:@"tipCount"]; 
          NSString *usersCount = [stats objectForKey:@"usersCount"]; 

          [resultDictionary setObject:checkinsCount forKey:@"checkinsCount"]; 
          [resultDictionary setObject:tipCount forKey:@"tipCount"]; 
          [resultDictionary setObject:usersCount forKey:@"usersCount"]; 

          NSArray *catArray = [[itemsArray objectAtIndex:i] objectForKey:@"categories"]; 

          if([catArray count]> 0){ 
           //Get Category List 
           NSDictionary *categoryDic = [catArray objectAtIndex:0]; 
           NSLog(@"categoryDic ----- = %@",categoryDic); 

           [resultDictionary setObject:[categoryDic objectForKey:@"icon"] forKey:@"icon"]; 
           [resultDictionary setObject:[categoryDic objectForKey:@"id"] forKey:@"catId"]; 
           [resultDictionary setObject:[categoryDic objectForKey:@"name"] forKey:@"catName"]; 

          } 
          //Add dictionary into Array 
          [resultArray addObject:resultDictionary]; 
         } 


         //Use this resultArray for display the Search details 
         for (int i=0; i<[resultArray count]; i++) { 
          NSString *venueName=[[resultArray objectAtIndex:i] objectForKey:@"venueName"]; 
          NSString *checkins=[[resultArray objectAtIndex:i] objectForKey:@"checkinsCount"]; 

          NSLog(@"venueName = %@",venueName); 
          NSLog(@"checkins = %@",checkins); 

         } 
        } 
      return resultArray; 
       } 
     return [NSMutableArray array]; 
     } 
+1

哎拉杰感谢答案,我用的连结(http:// jsonformatter.curiousconcept.com/)来理解json字典,然后解析它。谢谢 – priya 2012-01-12 11:40:10