如何解决在前台服务中获取 GPS 坐标
我实现了一项服务,我需要在其中获取坐标并将它们发送到服务器。即使在打盹模式下,该服务也应该工作。我用打盹解决了这个问题。但如果设备被阻止,相同的坐标将发送到服务器。我使用 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 举报,一经查实,本站将立刻删除。