인공위성을 이용한 GPS (Global Positioning System) 기술이 퍼지면서, 첩보 영화에 보이는 장면이 낯설지 않을 정도로 위치 정보를 이용한 애플리케이션이 많아졌습니다. GPS에서 제공한 위치 정보를 기초로 그 위치에 해당하는 주소, 지도, 교통 정보, 유명한 장소, 인구 특성 정보 등을 제공하는 다양한 애플리케이션이 나오고 있습니다. 애플리케이션 개발자 처지에서 보면, GPS 장비마다 다르게 애플리케이션을 개발하기는 쉽지 않은 일입니다. Windows 7은 위치 정보를 이용하는 애플리케이션 개발자의 부담을 덜고자 Location API를 제공합니다.

Native C++에서 다른 COM 객체를 다루는 것과 같이, Location API를 이용하는 것은  CoCreateInstance를 이용해 위치 객체를 만들고 ILocation을 반환 받아 장비 접근 요청, 관련 데이터 상태 확인, 이벤트 정보, 데이터를 받을 시간 제어와 같은 것을 구현할 수 있습니다. COM 객체를 다루는 것이므로, Script로 접근하거나, .NET 언어에서 COM 인터페이스를 호출할 수 있습니다.

아래는 Location API를 지원하는 GPS 장비를 가진 PC의 동선을 나타낸 애플리케이션입니다. .NET 언어로 Location API COM 객체를 호출하고, WPF Ribbon, Virtual Earth 3D WinForms 컨트롤을 이용해 만든 것입니다. 소스 코드는 http://code.msdn.microsoft.com/Windows7NavApp/Release/ProjectReleases.aspx?ReleaseId=2130에서 찾을 수 있습니다.

지금은 게릴라 콘서트 때, 차를 타고 다니면서 홍보 하지만, 앞으로는 위치 정보를 가진 애플리케이션이 홍보 수단으로 활용될 수 있을 지도 모르겠네요.

clip_image002