gpt4 book ai didi

Android:关于GPS的各种问题

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:16:30 27 4
gpt4 key购买 nike

我正在编写我的第一个基于位置的 android 应用程序,但对某些 GPS 服务 api 感到困惑。以下是我的一些问题:

1) 为了获取我的当前位置,我在一个 Activity 的 onCreate() 方法中调用了带有监听器的 requestLocationUpdates()。但是当另一个 Activity 开始并且当前 Activity 不可见时会发生什么? GPS 位置更新会停止吗?如果是这样,我如何在 Activity 切换后保持它?

2) Location.getSpeed() 的准确度如何?它是如何计算的?它能区分骑自行车和步行吗?

3) 不是真正关于 android 的问题。如何计算一个位置的坐标,例如,距离我当前位置 100 米?

4)要停止GPS,我只需要删除所有已经注册到locationmanager的监听器?

非常感谢!

最佳答案

这不会是一个详尽的答案,因为我没有任何 Android 开发经验,但我只是想补充一下我对你的 GPS 问题的看法:

问题 2: 通常速度是在 GPS 硬件中计算的,只需将距离变化除以时间变化即可。 (参见下面的评论)速度通常是只要有 GPS 覆盖范围,就相当准确,而且您绝对应该能够分辨出某人是步行还是骑自行车。您甚至应该能够区分正常步行(6 公里/小时)和慢跑(12 公里/小时)。

问题 3:在距当前位置 100 米处有无限多个位置。只有添加方位角,才能推导出目的地点。公式如下 ( Source ):

lat2 = asin(sin(lat1)*cos(d/R) + cos(lat1)*sin(d/R)*cos(θ))
lon2 = lon1 + atan2(sin(θ)*sin(d/R)*cos(lat1), cos(d/R)−sin(lat1)*sin(lat2))

d/R is the angular distance (in radians), where d is the distance travelled and R is the earth’s radius

您可能想查看以下 Stack Overflow 帖子以了解上述内容的 JavaScript 实现,我认为移植应该不难:

关于Android:关于GPS的各种问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2938023/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com