-4

最寄りのATMを見つけるアプリを開発したいのですが、これをすべて設定するにはどうすればよいですか?現在の位置を見つけて、ATMの位置を入力します。

4

2 に答える 2

4

まず、現在の場所を取得するのに役立つ CLLocationManager クラスを通過する必要があります

CLLocationManager *locationManager   =       [[CLLocationManager alloc]init];
 locationManager.delegate         =       self;
 [locationManager startUpdatingLocation];

次のデリゲートは、更新された場所を取得するのに役立ちます

-(void) locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{

}

Google Place API を使用して、現在の座標に近いものを検索できるようになりました

NSString *url = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/search/xml?location=%f,%f&radius=%.0f&types=%@&sensor=true&key=AIzaSyDIWlL",currentlatitude,currentlongitude,distanceinmeters,itemYouWantToSearch];

// here you have to use your own key and change the ivars according to your need.

ここで、NSXMLParser を使用してデータを解析する必要があります

NSXMLParser *itemParser = [[NSXMLParser alloc]initWithContentsOfURL:[NSURL URLWithString:url]];
[itemParser setDelegate:self];
[itemParser parse];

次のパーサーデリゲートは、データを取得するのに役立ちます

-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict

{
 //opening tag
}

-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
  //data of opening tag
}

-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{

//closing tag
}
于 2012-07-04T14:24:07.257 に答える
0

まず最初に、XMLParsing、JSON Parsing についてすべて読む必要があります。解析についてすべて学習したら、次のステップである API に進みます。インターネットで ATM の詳細を提供している URL を見つけてください... ATM の前に、Google の Weather API を使用することをお勧めします... 初心者には簡単です。

于 2012-07-04T14:00:46.430 に答える