arteqrt
@arteqrt
Почти не начинающий програмист

Как отследить что нажал пользователь в startResolutionForResult()?

61dda3c4c7c4f712156168.jpeg
61dda3cc0768d263437964.jpeg

Хочу чтобы пользователь включил геолокацию с помощю системного диалога вызовом
exception.startResolutionForResult(this@MainActivity, 45)


kak-vklyuchit-gps-na-telefone-syaomi1.jpg

В оффициальной документации пишет, что нужно отследить результат нажатия с помощю ActivityForResult(), но как извесно, этот метод устаревший. Да, возможно его уберут нескоро, но я все же хотел придерживаться "Хорошего кода"

Как мне узнать что ответил пользователь?
  • Вопрос задан
  • 67 просмотров
Пригласить эксперта
Ответы на вопрос 1
@AlexVWill
нужно отследить результат нажатия с помощю ActivityForResult(), но как извесно, этот метод устаревший


// You can do the assignment inside onAttach or onCreate, i.e, before the activity is displayed
ActivityResultLauncher<Intent> someActivityResultLauncher = registerForActivityResult(
        new ActivityResultContracts.StartActivityForResult(),
        new ActivityResultCallback<ActivityResult>() {
            @Override
            public void onActivityResult(ActivityResult result) {
                if (result.getResultCode() == Activity.RESULT_OK) {
                    // There are no request codes
                    Intent data = result.getData();
                    doSomeOperations();
                }
            }
        });

public void openSomeActivityForResult() {
    Intent intent = new Intent(this, SomeActivity.class);
    someActivityResultLauncher.launch(intent);
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы