如果我将任何ACCURACY设置为条件,则LocationManager需要很长时间才能开始更新位置:
Criteria criteria = new Criteria();criteria.setAccuracy(Criteria.ACCURACY_FINE);provIDer = locationManager.getBestProvIDer(criteria,true);locationManager.requestLocationUpdates(provIDer,this);
如果我删除ACCURACY标志,它会立即启动但有时不准确.
如何让它立即开始更新并且准确度高?
最佳答案不幸的是,没办法.如果您使用ACCURACY_FINE,您将仅使用GPS,但GPS具有“冷启动”效果.这意味着如果您的设备长时间不使用GPS,则需要大量时间连接卫星并下载历书和星历.您无法更改此行为.
如果您不使用ACCURACY_FINE,您将同时使用GPS和网络(移动,Wi-Fi)信号.因此,您将从网络中获得快速的第一个位置,因为它们没有“冷启动”效果,但此方法的准确性很低.当您的GPS模块准备就绪时,您也将开始接收更新.
@H_502_23@ 总结以上是内存溢出为你收集整理的java – 如果设置准确性,为什么Android LocationManager在位置更新开始之前有很长的延迟全部内容,希望文章能够帮你解决java – 如果设置准确性,为什么Android LocationManager在位置更新开始之前有很长的延迟所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)