gpt4 book ai didi

android - 服务中的 LocationManager - 如果 1 分钟内没有修复,则需要停止

转载 作者:太空宇宙 更新时间:2023-11-03 13:05:25 25 4
gpt4 key购买 nike

我有定期服务,我开始每 5 分钟使用一次警报。服务实现 LocationListener 以获取 GPS 定位并将其保存到 SqLite 数据库中。

我给服务 1 分钟以获得最佳修复。如果我在那之前获得准确度 <20 - 甚至更好。

一切正常。我还有检查 GPS 是否禁用的代码,以便我退出服务。

我想做的是:如果 1 分钟内没有修复 - 我想退出服务。目前,由于大多数逻辑(时间检查等)都在 onLocationChanged 中 - 我从来没有机会这样做,因为我从来没有得到位置。

我可以使用计时器或类似的东西吗?我是 Java 的新手,例子会很好。我是这样看的:开始时我创建带有回调的计时器,在这个回调函数中我将清理和关闭。我不确定 onLocationChanged 的​​运行是否会有任何影响?

是否可以在我获得 onLocationChanged 后立即禁用计时器?

最佳答案

使用 android.os.Handler :

Handler timeoutHandler = new Handler();
timeoutHandler.postDelayed(new Runnable() {
public void run() {
stopSelf();
}
}, 60 * 1000);

关于android - 服务中的 LocationManager - 如果 1 分钟内没有修复,则需要停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5623707/

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