다음을 통해 공유


Xamarin.Forms 지도 지오코딩

네임스페이 Xamarin.Forms.Maps 스는 문자열 주소와 위도 및 개체에 저장된 Position 경도 좌표를 변환하는 클래스를 제공합니다Geocoder. 구조체에 Position 대한 자세한 내용은 지도 위치 및 거리를 참조 하세요.

참고 항목

대체 지오코딩 API는 .에서 Xamarin.Essentials사용할 수 있습니다. API는 Xamarin.EssentialsGeocoding 이 API에서 반환된 문자열과 달리 주소를 지오코딩할 때 구조화된 주소 데이터를 제공합니다. 자세한 내용은 지오코딩을 참조 Xamarin.Essentials하세요.

주소 지오코딩

인스턴스를 만들고 Geocoder 인스턴스에서 메서드 Geocoder 를 호출하여 거리 주소를 위도 및 경도 좌표로 지오코딩할 GetPositionsForAddressAsync 수 있습니다.

using Xamarin.Forms.Maps;
// ...
Geocoder geoCoder = new Geocoder();

IEnumerable<Position> approximateLocations = await geoCoder.GetPositionsForAddressAsync("Pacific Ave, San Francisco, California");
Position position = approximateLocations.FirstOrDefault();
string coordinates = $"{position.Latitude}, {position.Longitude}";

메서드는 GetPositionsForAddressAsync 주소를 나타내는 인수를 string 사용하고 주소를 나타낼 수 있는 개체 컬렉션을 Position 비동기적으로 반환합니다.

주소 역방향 지오코드

위도 및 경도 좌표는 인스턴스를 만들고 Geocoder 인스턴스에서 메서드 Geocoder 를 호출 GetAddressesForPositionAsync 하여 도로 주소로 역방향 지오코딩될 수 있습니다.

using Xamarin.Forms.Maps;
// ...
Geocoder geoCoder = new Geocoder();

Position position = new Position(37.8044866, -122.4324132);
IEnumerable<string> possibleAddresses = await geoCoder.GetAddressesForPositionAsync(position);
string address = possibleAddresses.FirstOrDefault();

이 메서드는 GetAddressesForPositionAsync 위도 및 경도 좌표로 구성된 인수를 사용하고 Position 위치 근처의 주소를 나타내는 문자열 컬렉션을 비동기적으로 반환합니다.