I am working on a CoreLocation
based application which should show the position of the user on a map.
My current problem is, that the precision of CL is not very good.
I am testing the app in an urban environment, so i am walking through a the streets around our office and see how precise it is. The horizontalAccuracy
is usually around 47m - 50m when i am walking, and updates occur randomly between every 10 seconds and 1 minute. The updated position can vary between almost accurate and 20 meters or more off my real position. When i stop and wait for a minute, the position will almost always be correct within a minute, and t开发者_Python百科he precision may rise to 17m.
I have tested this with three iPhone (3G and 3GS) and one iPod Touch(which is less precise).
However, there is a difference in the final usage of the product: The target audience of our product will use it in a rural, open environment without any houses nearby.
Will this improve accuracy?
How accurate can the iPhone get at best in terms of horizontalAccuracy?
Are there any best practices, tips and tricks to improve the precision?
Your problem is not CL, but the urban environment. Buildings block view of the GPS satellites used to calculate location. The more satellites you can see the better the accuracy.
The iPod Touch doesn't have GPS capability and location based solely on WiFi signals it can detect and lookup in an online database. It will probably give poor or no location data when in a rural environment since it depends entirely on nearby WiFi signals.
For more info see:
- iphone-gps-performance
- iphone GPS Tips and Tricks
The absolute best accuracy you can expect is about 2.5m (8') without WAAS and with SA turned off. You won't get that in an urban environment though, you need a clear sky for that best case accuracy.
精彩评论