我想通过管理员的帮助使app-like-tracker能够在特定的时间跟踪特定的用户,所以我要求在每一秒跟踪long和lat用户并传递到其他地方。
n9vozmp41#
以电池性能为例,每秒询问gps位置可能会非常昂贵。另外,是否需要经常更新位置?我会考虑是否真的有必要。在某些设备上可能存在一些硬件限制,不允许以如此小的间隔进行位置请求。除此之外,使用计时器在选定的时间间隔上运行函数。
ogsagwnx2#
您可以编写一个递归方法,通过网络调用发送用户位置,并在任何时候成功回调时保持调用本身,这一行都是这样;
private void sendLocation(final String long, final String lat){ repository.getLocationApiService().sendLocation(long, lat) .enqueue(new Callback<SendLocationResponse>() { @Override public void onResponse(Call<SendLocationResponse> call,Response<SendLocationResponse> response) { if(response.isSuccessful()){ sendLocation(long, lat); } else{ //Handle error } } @Override public void onFailure(Call<SendLocationResponse> call,**strong text**Throwable t) { //Handle networking errors } }); }
这样下一个位置马上就发过去了,希望这有帮助,也是利用改装中的方法。
2条答案
按热度按时间n9vozmp41#
以电池性能为例,每秒询问gps位置可能会非常昂贵。另外,是否需要经常更新位置?我会考虑是否真的有必要。在某些设备上可能存在一些硬件限制,不允许以如此小的间隔进行位置请求。
除此之外,使用计时器在选定的时间间隔上运行函数。
ogsagwnx2#
您可以编写一个递归方法,通过网络调用发送用户位置,并在任何时候成功回调时保持调用本身,这一行都是这样;
这样下一个位置马上就发过去了,希望这有帮助,也是利用改装中的方法。