geolocation


getCurrentPosition

현재 위치정보를 읽어온다.

위치정보는 successCallback에 Position객체로 넘어온다.

successCallback

필드필드필드설명
result  위치 상세 정보
coordslatitude위도
longitude경도
altitude높이
accuracy위경도의 정확도(meter법)
altitudeAccuracy높이의 정확도(meter법)
timestamp 정보를 수집한 시간
    

errorCallback

필드설명
code에러코드
message에러메세지
  

Example

hone.channel.execute('geolocation', 'getCurrentPosition', [],
   function (result) {
        alert("위도:" + result.coords.latitude + ", 경도: " + result.coords.longitude);
    }, function (e) {
        alert(JSON.stringify(e));
    }
);

Result

{
   "coords": {
       "accuracy": 18.698999404907227,
       "altitude": 0.0,
       "altitudeAccuracy": 18.698999404907227,
       "latitude": 37.5240917,
       "longitude": 126.9229084
    },
   "timestamps": 1485932041423
}

watchPosition

현재 위치정보를 주기적으로 읽어온다.

options

필드설명비고M/O
interval정보 갱신 시간(ms) 
watchIdwatch Id임의의 문자열M
    

successCallback {JSON Object}

필드필드필드설명
result  위치 상세 정보
coordslatitude위도
longitude경도
altitude높이
accuracy위경도의 정확도(meter법)
altitudeAccuracy높이의 정확도(meter법)
timestamp 정보를 수집한 시간
    

errorCallback

필드설명
code에러코드
message에러메세지
   

Example

var interval = 3000;
var watchId = "1000";

hone.channel.execute('geolocation', 'watchPosition', [interval, watchId],
   function (result) {
        alert("위도:" + result.coords.latitude + ", 경도: " + result.coords.longitude);
    }, function (e) {
        alert(JSON.stringify(e));
    }
);

GPS 는 이동 거리에 영향이 있기 때문에 지정한 시간에 맞춰 데이터가 반환 되지 않을 수도 있다. 

Result

{
   "coords": {
       "accuracy": 19.264999389648438,
       "altitude": 0.0,
       "altitudeAccuracy": 19.264999389648438,
       "latitude": 37.5240403,
       "longitude": 126.9229504
    },
   "timestamps": 1485932593408
}

clearWatch

동작중인 watch를 종료한다.

options

필드설명M/O
watchId동작중인 watchId
watchPosition 에서 생성한 watchId 사용
M
   

successCallback

필드설명
없음없음
  

errorCallback

필드설명
code에러코드
message에러메세지
  

Example

hone.channel.execute('geolocation', 'clearWatch', [watchId],
   function() {
        alert('success');
    }, function(e) {
        alert(JSON.stringify(e));
    }
);

Error Code

CodeCauseComment
E10500파라메터 값이 잘못되어 있을 경우 
E10501전달된 액션 값이 알 수 없는 액션일 경우 
E10502정보 갱신 시간 정보가 잘못되어 있을 경우 
E10503watch 아이디 값이 null 이거나 빈 값인 경우 
E10550실행 중 오류가 발생 되었을 경우 
E10551watchPosition 요청 시 watch 아이디 값이 존재하는 경우 
E10552clearWatch 요청 시 watch 아이디 값을 찾을 수 없는 경우 
E10553위치 정보을 얻기위한 서비스가 지원하지 않는 경우 
E10599알 수없는 오류가 발생 되었을 경우