java – Android GPS需要一段时间才能准确
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – Android GPS需要一段时间才能准确,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1833字,纯文字阅读大概需要3分钟。
内容图文
我已经制作了一个Android应用程序,可以通过点击按钮获取经度和纬度的位置.
起初我得到最后一个已知的位置读数,为了论证,当我第一次加载应用程序/打开gps时,这是不准确的.
我想知道的是如何等待它准确,比如在谷歌地图中,??当你收到“等待位置”的祝酒消息时.
如果您看到任何方式可以改进代码,它也会有所帮助.
代码:
public class Clue extends Activity {
public static double latitude;
public static double longitude;
Criteria criteria;
LocationManager lm;
LocationListener ll;
Location location;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.questions);
criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
ll = new MyLocationListener();
lm.requestLocationUpdates(lm.getBestProvider(criteria, true), 0, 0, ll);
}
private boolean weAreThere() {
location = getLocation();
longitude = location.getLongitude();
latitude = location.getLatitude();
return inCorrectPlace(param);
}
private Location getLocation() {
lm.requestLocationUpdates(lm.getBestProvider(criteria, true), 0, 0, ll);
return lm.getLastKnownLocation(lm.getBestProvider(criteria, true));
}
}
public class MyLocationListener implements LocationListener
{
public void onLocationChanged(Location loc)
{
Clue.longitude = loc.getLongitude();
Clue.latitude = loc.getLatitude();
}
}
感谢阅读,所有回复将不胜感激.
本
解决方法:
如果Location.hasAccuracy()返回true,您可以调用Location.getAccuracy()来检索以米为单位的精度,然后过滤那些您认为不够准确的精度.
请注意,您没有使用LocationManager.GPS_PROVIDER,因此您也可以通过其他方式(如WiFi)获取修复程序.
通常期望GPS芯片在获得GPS修复(室外)之前获得“热”*大约一分钟.
*热,我的意思是有卫星报道.一段时间后,一些芯片组断开连接(“冷”)以保留电池.当芯片冷时,首次定位时间(TTFF)更大.
内容总结
以上是互联网集市为您收集整理的java – Android GPS需要一段时间才能准确全部内容,希望文章能够帮你解决java – Android GPS需要一段时间才能准确所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。