2016-04-04 19 views
0

Google Place'i kullanan bir uygulama oluşturuyorum. Yahoo'nun api'sini kullanmadan önce yahoo tarafından sağlanan yerel aramadan sorumlu olan bir url kullanmak zorunda kaldım. url takip ediyordu:Google Yer işareti URL

Yahoo'nun API Google Place geçmek için karar verdik kesilir Şimdi bu yana

http://local.yahooapis.com/LocalSearchService/V3/localSearch?appid=SF0DVEvV34G4GnXEDU4SXniaDebJ_UvC1G1IuikVz3vpOJrBpyD.VqCJCVJHMh99He3iFz1Rzoqxb0b7Z.0-

. Ama kullanmak için bir Url bulamıyorum. Ben sadece çerçeveyi çiziyorum ve api anahtarını kullanıyorum. Google Place için böyle bir URL'yi nerede bulabilirim? LİNKE izleyerek Google Rehber API için

cevap

1

Kayıt Aşağıda verilen:

https://code.google.com/apis/console

yerler için Otomatik Arama

https://github.com/AdamBCo/ABCGooglePlacesAutocomplete

NSString *const apiKey = @"*****23xAHRvnOf2BVG8o"; 
NSString * searchWord = @"search some place " 

NSString *urlString = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/autocomplete/json?input=%@&types=establishment|geocode&radius=500&language=en&key=%@",searchWord,apiKey]; 

Pragma işareti Kodu Linki bakın - Ağ Yöntemleri

-(void)retrieveGooglePlaceInformation:(NSString *)searchWord withCompletion:(void (^)(BOOL isSuccess, NSError *error))completion { 

if (!searchWord) { 
    return; 
} 

searchWord = searchWord.lowercaseString; 

self.searchResults = [NSMutableArray array]; 

if ([self.searchResultsCache objectForKey:searchWord]) { 
    NSArray * pastResults = [self.searchResultsCache objectForKey:searchWord]; 
    self.searchResults = [NSMutableArray arrayWithArray:pastResults]; 
    completion(YES, nil); 

} else { 

    NSString *urlString = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/autocomplete/json?input=%@&types=establishment|geocode&radius=500&language=en&key=%@",searchWord,apiKey]; 

    NSURL *url = [NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]]; 
    NSURLSession *session = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]]; 
    NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
    NSURLSessionDataTask *task = [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { 

     NSDictionary *jSONresult = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil]; 

     if (error || [jSONresult[@"status"] isEqualToString:@"NOT_FOUND"] || [jSONresult[@"status"] isEqualToString:@"REQUEST_DENIED"]){ 
      if (!error){ 
       NSDictionary *userInfo = @{@"error":jSONresult[@"status"]}; 
       NSError *newError = [NSError errorWithDomain:@"API Error" code:666 userInfo:userInfo]; 
       completion(NO, newError); 
       return; 
      } 
      completion(NO, error); 
      return; 
     } else { 

      NSArray *results = [jSONresult valueForKey:@"predictions"]; 

      for (NSDictionary *jsonDictionary in results) { 

      } 

      //[self.searchResultsCache setObject:self.searchResults forKey:searchWord]; 

      completion(YES, nil); 

     } 
    }]; 

    [task resume]; 
} 
} 
+0

searchWord değişkeni nedir? –

+0

Arama bir yer adıyla arama yapmaktan başka bir şey değil ama arama yapmak için google api'ye giriş yapmak – Sanju

+0

Bu bağlantıdaki kodu indirmek ve görmek ister misiniz? https://github.com/AdamBCo/ABCGooglePlacesOutocomplete – Sanju

İlgili konular