안녕하세요.
웹뷰로 내위치 값을 이용중에 있습니다.
웹상의 페이지에서는 내 위치 값이 속도가 빠른데 안드로이드 네이티브 apk 파일에서 설치 후 해당 펑션을 사용하면 10초정도 후 이동하는 현상을 확인 하였습니다.
안드로이드에서 requestPermission 위치 권한을 설정하였습니다.
혹시 이부분의에서 웹상과 웹뷰 상에서 속도 차이가 나는지 알수있을까요?
var list_yn = "${INIT_DATA.LIST}"
var center_y = "";
var center_x = "";
if(list_yn == "Y"){
center_y = "${INIT_DATA.MAP_Y}";
center_x = "${INIT_DATA.MAP_X}";
}else{
center_y = 37.498095;
center_x = 127.027610;
}
var geocoder = new kakao.maps.services.Geocoder();
var mapContainer = document.getElementById('map'), // 지도를 표시할 div
mapOption = {
center: new kakao.maps.LatLng(center_y, center_x), // 지도의 중심좌표
level: 4 // 지도의 확대 레벨
};
var map = new kakao.maps.Map(mapContainer, mapOption); // 지도를 생성합니다
if (navigator.geolocation) {// GeoLocation을 이용해서 접속 위치를 얻어옵니다
navigator.geolocation.getCurrentPosition(function(position) {
var lat = position.coords.latitude; // 위도
var lon = position.coords.longitude; // 경도
if(list_yn != "Y"){
getMyLocation(lat,lon);
var locPosition = new kakao.maps.LatLng(lat, lon);// 마커가 표시될 위치를 geolocation으로 얻어온 좌표로 생성합니다
// 마커와 인포윈도우를 표시합니다
displayMarker(locPosition);
}else{
getMyLocation(center_y,center_x);
}
//거리 계산
<c:forEach items='${INIT_DATA.resultList }' var='resultList' varStatus='status'>
var polyline = new kakao.maps.Polyline({
map: map,
path: [
new kakao.maps.LatLng(lat, lon),
new kakao.maps.LatLng(${resultList.POST_Y }, ${resultList.POST_X }),
],
strokeWeight: 0,
strokeColor: '#FF00FF',
strokeOpacity: 0.8,
strokeStyle: 'solid'
});
polyline.setMap(map);
var distance = Math.round(polyline.getLength()) //선의 거리 반올림
var letDistance = distance/1000 //m -> km변환
</c:forEach>
});
//거리 계산
}else{
alert("허용안함");
}
// 내위치
function displayMarker(locPosition) {
alert("이동");
// 마커를 생성합니다
var marker = new kakao.maps.CustomOverlay({
map: map,
position: locPosition,
content : '<div class="mapPoint"></div>'
});
alert("이동완료");
// 지도 중심좌표를 접속위치로 변경합니다
map.setCenter(locPosition);
}
//현재 위치 찾기
function getCurrentPosBtn(){
alert("현재위치 이동");
if ("geolocation" in navigator) { // GeoLocation을 이용해서 접속 위치를 얻어옵니다
navigator.geolocation.getCurrentPosition(function(position) {
var lat = position.coords.latitude; // 위도
var lon = position.coords.longitude; // 경도
// getMyLocation(lat,lon);
var locPosition = new kakao.maps.LatLng(lat, lon);// 마커가 표시될 위치를 geolocation으로 얻어온 좌표로 생성합니다
// 마커와 인포윈도우를 표시합니다
displayMarker(locPosition);
});
}else{
alert("위치 실패");
return
}
};