我正在开发一个使用高分辨率GPS数据的Android应用程序。它是为在汽车上使用而设计的,所以我不太担心电池寿命。我注意到,当我在谷歌导航应用程序运行的同时运行我的应用程序时,我的GPS数据的准确度在几米(< 10米)内。
然而,当我在没有导航应用的情况下运行我的应用时,我的位置数据一开始是精确的,但很快就变得很差( 1000米以内)。我的应用程序在PARTIAL_WAKE_LOCK中,所以CPU可以继续运行,但屏幕可以关闭。
以下是我请求GPS定位的方法:
requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, GPSListener);
有没有人知道可以更精确地请求数据的方法?Android Docs声称,这意味着在单独的全球定位系统呼叫之间没有时间或距离的下限。但显然,股票导航应用程序正在做一些不同的事情。有谁有什么想法吗?提前谢谢。
发布于 2011-06-22 02:13:58
您应该使用requestLocationUpdates (long minTime,float minDistance,Criteria criteria,PendingIntent intent),并将criteria设置为ACCURACY_HIGH以及您可以探索的其他一些选项。如果您也在使用WiFi网络,那么您还可以获得小区位置,以提供更高的准确性。
https://stackoverflow.com/questions/6429809
复制相似问题