Нужно получать геолокацию всегда(т.е в фоновом режиме и во время пользования приложением) в андроид
У меня появилась проблема связанная с получением геолокации пользователя. Использовал несколько способов но все четно. Вот последний из них
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Необходимо разрешение на использование местоположения")
.setMessage("Для работы приложения необходимо постоянное разрешение на использование вашего местоположения.")
.setPositiveButton("Предоставить разрешение", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// Предоставляем разрешение на использование местоположения "всегда"
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
if (ContextCompat.checkSelfPermission(MapActivity.this, Manifest.permission.ACCESS_BACKGROUND_LOCATION)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(MapActivity.this,
new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_BACKGROUND_LOCATION},
PERMISSION_REQUEST_CODE);
}
} else {
if (ContextCompat.checkSelfPermission(MapActivity.this, Manifest.permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(MapActivity.this,
new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
PERMISSION_REQUEST_CODE);
}
}
}
})
.setNegativeButton("Отмена", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
})
.create()
.show();
} ```
если я получу разрешение то запуститься
startLocationService();
который уже будт получать геолокацию и отправлять ее в базу данных. Но т.к я не получаю разрешение то и сервис не работает. Помогите что можно сделать в это ситуации