[英]how to start a handler from service after 15 second to prevent app from sleep and send location to webservice?
我正在开发 GPS 跟踪应用程序,我需要在 15 秒后跟踪位置。 我使用处理程序从 Service 类的 onStartCommand() 启动服务。 但在 15 秒后或一段时间后,它的处理程序并不总是执行。 我还使用了 WakeLock 来防止应用程序休眠。 如何克服这个问题?
简而言之:
new Handler().postDelayed(() -> { ... }, 15000);
操作(此处为 lambda)将在超时(15,000 毫秒)后执行。
展开它可能看起来像这样:
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
//Track my location
}
}, 15_000);
使用Timer
而不是Handler
如下所示
new java.util.Timer().schedule(new java.util.TimerTask() {
@Override
public void run() {
//do your task here
}
}, 15000);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.