2011-03-04 3 views
2

iphone을 통해 사용자의 위치를 ​​식별하기 위해 코어 위치를 사용하고 있습니다. 이제 응용 프로그램이 시작되고 [위치 관리자 startUpdatingLocation]으로 이동하면 "응용 프로그램이 현재 위치를 사용하고 싶습니다"라는 텍스트가있는 경고 상자가 표시됩니다. 이상적으로는 사용자가이 경고 상자에서 확인을 누르면 타임 아웃을 시작하고 싶습니다. 분명히 alertbox 응답을 포착 할 방법이 없기 때문에 애플리케이션이 10 초의 타임 아웃 시간으로 시작하자마자 타이머를 시작하는 것입니다. 물론 이것은 사용자가 alertbox의 버튼을 단지 시간 내에 누르지 않으면 타이머가 시간 초과되어 바로 그 위치 프로세스가 끝난다는 것을 의미합니다. 타임 아웃 타이머를 사용하는 이유는 앱이 맑은 하늘에서도 사용자 위치를 식별하는 데 더 오랜 시간이 걸리는 경우가 있기 때문입니다.Core Location이 정상적으로 작동하기위한 시간 초과 기간

그래서 내가 묻는 것은 응용 프로그램이 시작될 때 타이머와 위치 서비스가 모두 시작되면 코어 위치 서비스에 대한 이상적인 시간 제한이되어야한다는 것입니다.

답변

1

원하는 데이터의 정확성과 신선도에 실제로 의존하기 때문에 일반적인 조언을하기가 어렵습니다. 일반적으로 나이와 정확도가 다른 여러 코어 위치 업데이트를 받게됩니다. 일반적으로 오래된 캐시 된 위치가 먼저 표시됩니다. 그런 다음 WiFi 및 셀 타워 삼각 측량에 기반한 업데이트를 받게됩니다. GPS 업데이트는 가장 오래 걸리고 맑은 하늘에 달려 있습니다. 따라서 셀 타워 정확도 (~ 3km)가있는 캐시 된 위치 업데이트로 문제가 없으면 일반적으로 오랜 시간 동안 기다릴 필요가 없습니다. 20 초 제한 시간은 절대적으로 좋습니다. 물론, "운송인 없음"케이스를 다루고 GPS에 의존하는 경우에는 상황이 다릅니다.