问题描述
我实现了一项服务,我需要在其中获取坐标并将它们发送到服务器。即使在打盹模式下,该服务也应该工作。我用打盹解决了这个问题。但如果设备被阻止,相同的坐标将发送到服务器。我使用 fusedlocationproviderclient。获取最后位置。这就是它发送最后一个坐标的原因。该服务通过 AlarmManager 工作,它调用 onStartCommand,并调用方法来获取坐标并将它们发送到服务器。有没有办法在没有回调的情况下实现等。 我如何才能在调用该方法时获得新坐标? 我的方法:
private void addListenerLocation()
{
if (ActivityCompat.checkSelfPermission(this,Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED)
fusedLocationProviderClient.getLastLocation().addOnCompleteListener(new OnCompleteListener<Location>() {
@Override
public void onComplete(@NonNull Task<Location> task) {
Location location = task.getResult();
if (location != null) {
currentLon = location.getLongitude()currentLat = location.getLatitude();
}
}
});
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)