【发布时间】:2018-08-22 20:09:20
【问题描述】:
我想知道如何覆盖 OSMdroid 从何处获取其位置。在我的应用程序中,我已经在跟踪和存储用户的位置,所以做了两次(OSMdroid,我的应用程序是多余的)。将 OSMdroid 的位置来源更改为我的位置跟踪器是否值得在电池寿命方面付出努力?如果是这样,是否有人对我如何做到这一点有所了解。 OSMdroid 目前通过 Gradle 添加到我的项目中。只是想在实施之前做一些研究。
【问题讨论】:
-
可以通过一个类覆盖 OSMdroid 的位置提供程序:
class FakeOsmdroidLocationProvider implements IMyLocationProvider {...},然后在创建MyLocationNewOverlay时使用它代替IMyLocationProvider。仅当您很少请求位置或仅在没有 GPS 的情况下仅低准确率位置时,或者如果您在代码中对位置数据进行了一些额外的过滤时,它才会带来好处。 -
嗨,Markus,感谢您的回复 - 似乎并不难。我每两秒左右以高精度请求位置。所以我可能应该覆盖 OSMdroid 的位置?
-
您仍然可以使用自己的代码保持 GPS 硬件开启,因此我认为覆盖 OSMdroid 的位置提供程序不会带来任何节能优势。我这样做是因为我们已经有了进行卡尔曼滤波的位置相关代码。
-
这就是我正在寻找的答案 - 谢谢
标签: java android android-mapview android-location osmdroid