Presentation is loading. Please wait.

Presentation is loading. Please wait.

HTML5 Geolocation WPF를 준비하기 위해 필요한 배경지식들을 확인하겠습니다. 2012.012.02 최성규.

Similar presentations


Presentation on theme: "HTML5 Geolocation WPF를 준비하기 위해 필요한 배경지식들을 확인하겠습니다. 2012.012.02 최성규."— Presentation transcript:

1 HTML5 Geolocation WPF를 준비하기 위해 필요한 배경지식들을 확인하겠습니다. 최성규

2 Geolocation Geolocation API 는 HTML 5 에 새롭게 추가된 사용자의 위치정보를 얻기위한 JavaScript API 입니다. Geolocation API 는 세개의 Method 로 이루어진 API 입니다. 그 전에 먼저 알아야 할 점은 현재의 위치정보가 Network 정보로 부터 추측한 것인지 GPS 로 부터 얻은 것인지에 관한 자세한 내용은 알 수 없다는 것입니다. 단지 GPS 가 내장된 Smartphone 과 같은 Device 에서는 GPS 기능을 활용할 수 있고 일반 PC 에서는 WiFi 같은 정보를 이용해서 현재 정보를 알아 낼 수 있습니다. Geolocation 은 위치정보에 대한 정보를 GPS, WiFi IP Address, GSM/CDMA 망을 사용하는 휴대전화의 IDs 등에서 얻어옵니다. 다만 PC 에서는 한정된 정보만 제공하여 이용이 불가능한 경우가 있고 특히 Mobile Browser 에서 유용한 API 라고 할 수있습니다.

3 Geolocation 사용법 Geolocation API 와 관련된 함수는 모두 window.navigator 객체에 정의되어 있습니다. 다음 Method를 사용하여 위치정보를 얻어 올 수 있습니다. 위치를 한번만 얻기 위한 함수 위치를 계속 얻기 위한 함수 watchPosition은 getCurrentPosition과 매우 유사하며 동일한 매개변수를 사용합니다. 한 가지 주요 차이점은 이 API가 ID를 리턴한다는 것입니다. 이 ID는 geolocation API인 clearWatch와 함께 사용할 수 있다. clearWatch 함수는 watchPosition에서 리턴한 ID를 사용한다.  watchPosition을 호출한 후에는 clearWatch가 호출될 때까지 브라우저에서는 사용자가 전달한 success callback 함수에게 지속적으로 업데이트를 보낸다. 사용자의 위치를 지속적으로 받게 되면 모바일 장치의 배터리가 빠르게 소진되므로 이러한 API를 사용할 때는 많은 주의를 기울여야 한다.  navigator.geolocation.getCurrentPosition(successCallback, errorCallback, options); var watchId = navigator.geolocation.watchPosition(successCallback, errorCallback, options);

4 Geolocation 사용법 성공시 호출되는 successCallback 함수에 전달되는 위치정보에는 다음과 같은 정보들이 포함됩니다 Error 발생시 호출되는 errorCallback 함수에 전달되는 객체에 담겨져 있는 속성과 상수들입니다. 위치정보 속성 coords 속성 설명 타입 coords latitude 위도 double longitude 경도 altitude 고도 double? accuracy 위도, 경도의 오차 (단위와 오차)(m) altitudeAccuracy 고도의 오차 (단위와 오차) (m) heading Device 의 진행 방향. 북쪽을 기준으로 한 시계방향의 각도로 나타냄 speed Device 의 진행 속도(미터/초). (이용할 수 없을 때는 null) timestamp 위치정보를 얻은 시각(1970년 1월 1일 부터의 milisecond) long 속성/상수 설명 타입 code Error Code short UNKNOWN_ERROR 알수 없는 Error (Error code 값 : 0) PERMISSION_DENIED 권한 없음 Error (Error code 값 : 1) POSITION_UNAVAILABLE 위치정보를 얻을 수 없음 (Error code 값 : 2) TIMEOUT 시간제한 초과 (Error code 값 : 3) message Error Message string

5 Geolocation 사용법 위치정보를 조회시 입력하는 세번째 Parameter 인 option 에 지정할 수 있는 것들은 다음과 같습니다 내용을 보면 위치정보의 유효기간은 0 으로 항상 새로운 위치정보를 가져오며, 정확도 높은 위치정보를 요청합니다. 그리고 timeout 은 3초로 설정하고 있습니다. 속성/상수 설명 타입 enableHighAccuracy 정확도가 높은 위치 정보를 요청 boolean timeout 위치 정보 확인에 시간제한을 설정. 시간제한을 초과하면 TIMEOUT error 발생 long maximumAge 위치정보의 유효기간을 설정. 0 을 지정하면 항상 새로운 위치정보를 요청함 navigator.geolocation.getCurrentPosition(successCallback, errorCallback, {maximumAge: 0, enableHighAccuracy: true, timeout: 3000 } );

6 Geolocation 관련 링크 W3C Geolocation API Specification 강좌 Google Map API
강좌 Google Map API Demo

7 Thank You! !


Download ppt "HTML5 Geolocation WPF를 준비하기 위해 필요한 배경지식들을 확인하겠습니다. 2012.012.02 최성규."

Similar presentations


Ads by Google