0

ユーザーが出発地の住所と目的地の住所を選択するマップを使用してアプリを構築しようとしています..すべて正常に動作しますが、Google API 距離マトリックスにアクセスできません..

私は次のことを試しています:

NSString *urlPath = [NSString stringWithFormat:@"/maps/api/distancematrix/xml?origins=%@=%@&mode=driving&language=en-EN&sensor=false" ,polazisteField.text , odredisteField.text];
NSURL *url = [[NSURL alloc]initWithScheme:@"http" host:@"maps.googleapis.com" path:urlPath];

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc]init]autorelease];
[request setURL:url];
[request setHTTPMethod:@"GET"];

NSURLResponse *response ;
NSError *error;
NSData *data;
data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];

NSString *result = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
address.text = result;

、しかし運がない、これを解決する方法はありますか?

4

1 に答える 1

0

あなたの呼び出しは無効な API 呼び出しと見なされたと思います。

コードスニペットから編集された以下のコードを試してください。

 NSString *urlPath = [NSString stringWithFormat:@"/maps/api/distancematrix/json?origins=%@&destinations=%@&mode=driving&language=en-EN&sensor=false" ,polazisteField.text , odredisteField.text];
NSURL *url = [[NSURL alloc]initWithScheme:@"http" host:@"maps.googleapis.com" path:urlPath];

NSMutableURLRequest *request = [[NSMutableURLRequest alloc]init];
[request setURL:url];
[request setHTTPMethod:@"GET"];

NSURLResponse *response ;
NSError *error;
NSData *data;
data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];

NSMutableDictionary *jsonDict= (NSMutableDictionary*)[NSJSONSerialization  JSONObjectWithData:data options:kNilOptions error:&error];
NSMutableDictionary *newdict=[jsonDict valueForKey:@"rows"];
NSArray *elementsArr=[newdict valueForKey:@"elements"];
NSArray *arr=[elementsArr objectAtIndex:0];
NSDictionary *dict=[arr objectAtIndex:0];
NSMutableDictionary *distanceDict=[dict valueForKey:@"distance"];
NSLog(@"distance:%@",[distanceDict valueForKey:@"text"]);

   NSString *result = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
   address.text = [distanceDict valueForKey:@"text"];
于 2012-03-19T06:28:14.793 に答える