위치

디바이스의 GPS 정보 사용을 위해 필요한 기능을 제공합니다.
Index
기능명 설명
위치 권한 상태 값 반환 앱에서 위치정보 사용이 허용되어 있는지 여부를 확인합니다.
1.0.0 이상
1.0.0 이상
위치 권한 허용 요청 위치 정보 사용 권한이 없는 경우, 위치 정보 사용을 위한 권한을 요청합니다.
1.0.0 이상
1.0.0 이상
위치 정보 가져오기 현재의 위치 정보값을 요청합니다.
1.0.0 이상
1.0.0 이상
Tracking 디바이스의 트래킹 시작, 종료를 요청하거나 트래킹 정확도를 설정합니다.
1.0.0 이상
1.0.0 이상

위치 권한 상태 값 반환

현재 디바이스의 위치 정보를 사용하기 위한 권한 동의 여부를 조회하기 위해 요청합니다.
요청 시 디바이스의 현재 앱에 대한 위치 정보 허용 상태에 따라 결과값을 반환합니다.
callback 파라미터에 입력한 함수명을 가진 함수의 매개변수로 결과가 반환됩니다.
Request
  • Schema 호출 방식.
    hyblin://native?type=location&cmd=getPermissionStatus&callback={FunctionName}
  • Function 호출 방식
    Androidwindow.HLNative.hyblin(JSON.stringify({"type":"location", "cmd":"getPermissionStatus", "callback":"{FunctionName}"}));
    iOSwebkit.messageHandler.hyblin.postMessage({"type":"location", "cmd":"getPermissionStatus", "callback":"{FunctionName}"});
Return Parameter
  • {FunctionName}에 파라메터로 json 데이타 형식의 값을 반환합니다.

    성공 시FunctionName({"header":{"success":true}, "body":{"status":0}});
    실패 시FunctionName({"header":{"success":false, "errorCode":"-1"}});

    기능명
    success
    true 요청이 정상적으로 처리 됨.
    false 요청이 정상적으로 처리되지 않음.

    Android
    status
    0권한 동의 상태
    -1권한 거부 상태
    -99설정에서 미사용 처리
    errorCode
    1800위치 서비스 비활성화
    1801위치 가져오기 실패
    1802권한을 설정하지 않았음
    iOS
    status
    0권한 관련 사용자가 선택한 적이 없음
    1앱에서 위치 서비스를 사용할 권한이 없음
    2사용자가 거부 했거나 위치 서비스 비활성화
    3사용자가 언제든 위치 서비스 사용 가능
    4앱을 사용하는 동안에만 위치 서비스 사용 가능
    -99설정에서 미사용 처리
    errorCode
    1800위치 서비스 비활성화
    1801위치 가져오기 실패
    1802권한을 설정하지 않았음
    1803권한을 사용자가 거부
    설명 현재 위치 권한 상태값이 반환됩니다.
Sample Code
Request

위치 권한 허용 요청

현재 앱의 위치 서비스 연동 권한 획득을 위해 요청합니다.
요청 시 해당 디바이스의 현재 앱에 대한 위치 서비스 연동 허용 여부를 선택할 수 있는 팝업이 출력되며, 그 이후 현재 디바이스의 위치 서비스 허용 상태에 따른 결과를 반환합니다.
이전에 이미 요청한 경우, 팝업을 건너뛰고 위치 서비스 허용 상태를 반환합니다. 위치 서비스 허용 상태는 디바이스 설정에서 변경할 수 있습니다.
callback 파라미터에 입력한 함수명을 가진 함수의 매개변수로 결과가 반환됩니다.
아이폰의 경우, 사용권한 확인시 사용자가 거부한 경우는 사용할 수 없습니다. 이 경우에는 "설정화면으로 이동"을 이용해 주세요.
Request
  • Schema 호출 방식.
    hyblin://native?type=location&cmd=requestPermission&callback={FunctionName}
  • Function 호출 방식
    Androidwindow.HLNative.hyblin(JSON.stringify({"type":"location", "cmd":"requestPermission", "callback":"{FunctionName}"}));
    iOSwebkit.messageHandler.hyblin.postMessage({"type":"location", "cmd":"requestPermission", "callback":"{FunctionName}"});
Return Parameter
  • {FunctionName}에 파라메터로 json 데이타 형식의 값을 반환합니다.

    성공 시FunctionName({"header":{"success":true}, "body":{"status":0}});
    실패 시FunctionName({"header":{"success":false, "errorCode":"-1"}});

    기능명 å
    success
    true 요청이 정상적으로 처리 됨.
    false 요청이 정상적으로 처리되지 않음.
    status
    0 권한 허용.
    -1 권한 거부
    -99 디바이스의 위치 기능이 비활성화 상태.
    errorCode
    1800위치 서비스 비활성화
    1801위치 가져오기 실패
    1802권한을 설정하지 않았음
    1803권한을 사용자가 거부
    설명 위치 권한 요청 결과가 반환됩니다.
Sample Code
Request

위치 정보 가져오기

현재 디바이스의 위치 정보를 획득하기 위해 요청합니다.
요청 시 현재 디바이스의 위도와 경도를 결과값으로 반환합니다.
callback 파라미터에 입력한 함수명을 가진 함수의 매개변수로 결과가 반환됩니다.
Request
  • Schema 호출 방식.
    hyblin://native?type=location&cmd=getLocation&callback={FunctionName}
  • Function 호출 방식
    Androidwindow.HLNative.hyblin(JSON.stringify({"type":"location", "cmd":"getLocation", "callback":"{FunctionName}"}));
    iOSwebkit.messageHandler.hyblin.postMessage({"type":"location", "cmd":"getLocation", "callback":"{FunctionName}"});
Return Parameter
  • {FunctionName}에 파라메터로 json 데이타 형식의 값을 반환합니다.

    성공 시FunctionName({"header":{"success":true}, "body":{"status":0, "data":{"latitude":"100", "longitude":"100"}});
    실패 시FunctionName({"header":{"success":false, "errorCode":"-1"}});

    기능명
    success
    true 요청이 정상적으로 처리 됨.
    false 요청이 정상적으로 처리되지 않음.
    status
    0 성공
    data
    latitude 위도
    longitude 경도
    errorCode
    1800위치 서비스 비활성화
    1801위치 가져오기 실패
    1802권한을 설정하지 않았음
    1803권한을 사용자가 거부
    설명 현재 디바이스의 위치 정보가 반환됩니다.
Sample Code
Request

Tracking

현재 디바이스의 위치 정보 추적을 위해 요청합니다.
Traking Start, Tracking End, 정확도 설정 세 가지의 기능으로 이루어져 있습니다.
callback 파라미터에 입력한 함수명을 가진 함수의 매개변수로 결과가 반환됩니다.
Request

Traking Start


  • Schema 호출 방식.
    hyblin://native?type=location&cmd=startTracking&callback={FunctionName}&trackingCallback={SubFunctionName}&param={"accuracy":"", "interval":""}
  • Function 호출 방식
    Androidwindow.HLNative.hyblin(JSON.stringify({"type":"location", "cmd":"startTracking", "param":{"accuracy":"", "interval":""}, "callback":"{FunctionName}", "trackingCallback":"{SubFunctionName}"}));
    iOSwebkit.messageHandler.hyblin.postMessage({"type":"location", "cmd":"startTracking", "param":{"accuracy":""}, "callback":"{FunctionName}", "trackingCallback":"{SubFunctionName}"});


Traking End


  • Schema 호출 방식.
    hyblin://native?type=location&cmd=endTracking&callback={FunctionName}
  • Function 호출 방식
    Androidwindow.HLNative.hyblin(JSON.stringify({"type":"location", "cmd":"endTracking", "callback":"{FunctionName}"}));
    iOSwebkit.messageHandler.hyblin.postMessage({"type":"location", "cmd":"endTracking", "callback":"{FunctionName}"});


정확도 설정


  • Schema 호출 방식.
    hyblin://native?type=location&cmd=desiredAccuracy&callback={FunctionName}&param={"accuracy":""}
  • Function 호출 방식
    Androidwindow.HLNative.hyblin(JSON.stringify({"type":"location", "cmd":"desiredAccuracy", "param":{"accuracy":""}, "callback":"{FunctionName}"}));
    iOSwebkit.messageHandler.hyblin.postMessage({"type":"location", "cmd":"desiredAccuracy", "param":{"accuracy":""}, "callback":"{FunctionName}"});
Request Parameter

Traking Start


  • param 파라메터에 json 데이타 형식의 값을 입력해 요청합니다.
    ex) "param":{"accuracy":"0", "interval":"1000"}

    기능명
    Android
    interval
    millisecond (1000 = 1초)
    accuracy
    0HighAccuracy - 정확한 위치(GPS)
    1BalancedPowerAccuracy - 약 100미터(Wi-Fi, 휴대폰 기지군 위치)
    2LowPower - 약 10 키로미터(도시 수준의 정밀도)
    3다른 앱에서 트리거한 위치 수집
    iOS
    accuracy
    0BestForNavigation - 외부전원 필요
    1Best - 높은 정확도
    2NearestTenMeters - 10미터
    3HundredMeters - 100미터
    4Kilometer - 1키로미터
    5ThreeKilometers - 3 키로미터


정확도 설정


  • param 파라메터에 json 데이타 형식의 값을 입력해 요청합니다.
    ex) "param":{"accuracy":"0"}

    기능명
    Android
    accuracy
    0HighAccuracy - 정확한 위치(GPS)
    1BalancedPowerAccuracy - 약 100미터(Wi-Fi, 휴대폰 기지군 위치)
    2LowPower - 약 10 키로미터(도시 수준의 정밀도)
    3다른 앱에서 트리거한 위치 수집
    iOS
    accuracy
    0BestForNavigation - 외부전원 필요
    1Best - 높은 정확도
    2NearestTenMeters - 10미터
    3HundredMeters - 100미터
    4Kilometer - 1키로미터
    5ThreeKilometers - 3 키로미터
Return Parameter

Tracking Start


  • {FunctionName}, {SubFunctionName}에 파라메터로 json 데이타 형식의 값을 반환합니다.

    성공 시 FunctionName({"header":{"success":true}, "body":{"status":0}});
    SubFunctionName({"header":{"success":true}, "body":{"status":0, "data":{"latitude":"100", "longitude":"100"}});
    실패 시FunctionName({"header":{"success":false, "errorCode":"-1"}});

    기능명
    success
    true 요청이 정상적으로 처리 됨.
    false 요청이 정상적으로 처리되지 않음.
    status
    0 Tracking 시작 성공
    -1 Tracking 시작 실패
    errorCode
    1800위치 서비스 비활성화
    1801위치 가져오기 실패
    1802권한을 설정하지 않았음
    1803권한을 사용자가 거부
    설명 트래킹 시작 성공 여부 및 위치 정보가 반환됩니다.


Tracking End


  • {FunctionName}에 파라메터로 json 데이타 형식의 값을 반환합니다.

    성공 시FunctionName({"header":{"success":true}, "body":{"status":0}});
    실패 시FunctionName({"header":{"success":false, "errorCode":"-1"}});

    기능명
    success
    true 요청이 정상적으로 처리 됨.
    false 요청이 정상적으로 처리되지 않음.
    status
    0 Tracking 종료 성공
    -1 Tracking 종료 실패
    설명 트래킹 종료 성공 여부가 반환됩니다.


정확도 설정


  • {FunctionName}에 파라메터로 json 데이타 형식의 값을 반환합니다.

    성공 시FunctionName({"header":{"success":true}, "body":{"status":0}});
    실패 시FunctionName({"header":{"success":false, "errorCode":"-1"}});

    기능명
    success
    true 요청이 정상적으로 처리 됨.
    false 요청이 정상적으로 처리되지 않음.
    status
    0 정확도 설정 성공
    -1 정확도 설정 실패
    설명 정확도 설정 성공 여부가 반환됩니다.
Sample Code
Request