마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

GPS 기반으로 이동 거리를 구하고 있습니다. 도와주세요.

0 추천

현재 GPS 기반으로 이동 거리(미터)를 구하고 있습니다.

 

 

 

 public void onLocationChanged(Location location) {

 

 if (a==true) {

            Beforelocation = location;

            a = false;

        }

        if (location != null) {

 

            Toast.makeText(this, "이전1 : " + Beforelocation + "현재1 : " + location, Toast.LENGTH_SHORT).show();

 

            if (Beforelocation != location) {

                range = Beforelocation.distanceTo(location);

                all_range += range;

                Toast.makeText(this, "이전2 : " + Beforelocation + "현재2 : " + location, Toast.LENGTH_SHORT).show();

            }

            String Rrange = String.format("%.0f", all_range);

            tv_moving.setText("현재 이동거리: " + Rrange + "M");

        }

 

 

}

 

현재 위치를 처음에 beforelocation에 넣고 if문을 이용하여 변경된 위치와 같지 않을 경우

 

location.distanceTo를 써서 거리를 구하고 있습니다. 하지만 이런 식으로 하니까 거리 값이 엄청나게 증가하네요.

 

아무래도 ononLocationChanged 가 계속해서 불러져서 이동 값이 엄청나게 빠르게 더해지면서 일어나는 문제인 것

같은데 어떻게 해결 할 수 있을까요?? ㅠㅠ

 

 

 

보통 이동 거리를 측정하는 어플은 이렇게 하는게 아니라 다른 방식이 있나요? 도와주세요 ㅠㅠ

금색술 (500 포인트) 님이 2015년 11월 3일 질문

1개의 답변

0 추천
aucd29 (218,390 포인트) 님이 2015년 11월 4일 답변
...