2013-05-30 3 views
0

나는 GPS 관련 애플 리케이션과 함께 일하고 있는데 수직 정확도를 얻고 싶지만 항상 11.0000을 수정해야한다. lat와 lng로 동적 인 것이 필요하다. getAccuracy을 사용했지만 Horizontal Accuracy가 발생한다. 안드로이드 GPS의 수직 정확도

@Override 
public void onLocationChanged(Location location) 
{ 
if (location != null) 
{ 
lat = location.getLatitude(); 
lon = location.getLongitude(); 
Geocoder geoCoder = new Geocoder(getBaseContext(), 
Locale.getDefault()); 
address = mailOb.getAddress(geoCoder, lat, lon); 

if (!meterFootFlag) 
{ 
diameter = Math.round(location.getAccuracy()) + " m."; 
altitude = Math.round(location.getAltitude()) + " m."; 

} 
else 
{ 
diameter = Math.round(location.getAccuracy() * 3.28084) 
+ " ft."; 
altitude = Math.round(location.getAltitude() * 3.28084) 
+ " ft."; 

} 

if (diameter.contains("+")) 
diameter.replace("+", ""); 
else if (altitude.contains("+")) 
altitude.replace("+", ""); 
} 
else 
{ 
lat = 0.0; 
lon = 0.0; 

if (!meterFootFlag) 
{ 
altitude = 0.0 + " m."; 
diameter = 0.0 + " m."; 

} 
else 
{ 
altitude = 0.0 + " ft."; 
diameter = 0.0 + " ft."; 

} 
} 
mlocManager.removeUpdates(MySettings.this); 
pDialog.dismiss(); 

어떻게

답변

3

안드로이드 수직 정확도를 제공하지 않습니다 그것은 수직 정확도를 사전에

감사를 얻을 수 있습니다.
수직 정확도는 일반적으로 수평 정확도보다 2-3 배 더 나쁩니다.

간단한 해결책 : 가로 및 세로 모두에 대해 안드로이드 정확도를 사용하십시오.

고급 솔루션 1 : 안드로이드가 사용하는 총 정확도로 예를 들면, 변환 계수를 찾아 데리고

시도 (이 위도, 긴 고도를 포함하여 오류 구체의 반경 오류, 수) 무엇을 찾을 수 정확도 및 곱하기 * 2,5

또 다른 해결책은 아이폰의 수평 및 수직 정확도를보고 안드로이드의 그것과 비교하십시오. acc에서 vert acc까지 평균 변환 계수를 알아 내라.

해결 방법 3 : 왜 수직 정확도가 필요한지 생각해보십시오. 왜 그게 필요하니?

힌트 : 내 iphone4에에서 예 : 아이폰 30m의 호르을 표시 할 때, 내가 57vert, 10hor 있습니다 15-20vert, 5 호르 : 10vert

+0

그래서이 상황에서 대안은 무엇입니까? 나는 그것을 사용하기 위해 떠난다? 아니면 이거 다른 건 쓸 수 있니? – Yagnesh

+0

나는 내 대답을 업데이트했습니다. – AlexWien

+0

@Yug는 제 대답이 유용 했습니까? 또한 upvoting을 고려하십시오. – AlexWien

1

고도의 정확도가 크게 핵심 GPS 정확도, 기압계 등의 추가 센서의 사용에 따라 달라집니다 와이파이/셀 네트워크와 퓨전 알고리즘의 사용. 일정한 비율이 아닙니다. 정확성을 얻고 싶다면 다음을 시도해보십시오. 움직임이없는 동안 신호의 변화를 확인하십시오. 일부 장치가 움직이지 않는 것을 감지하고 전력을 절약하기 위해 최종 출력을 반복하므로 항상 작동하지는 않습니다. 조금 비싸 다른 접근법은 참조로 확인하는 것입니다 https://developers.google.com/maps/documentation/elevation/intro 그래서 기본적으로 경도 lon 측정과 함께 경도 lon 측정하고 수직 오류 u를 확인하면 당신이 열려있는 영역에 있다고 가정 해.