onactivityResult вызывается не в то время

Я использую этот код

      final Intent i = new Intent();
      i.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
      i.addCategory(Intent.CATEGORY_DEFAULT);
      i.setData(Uri.parse("package:" + context.getPackageName()));
      i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
      i.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
      i.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
      parentFragment.startActivityForResult(i, Constants.PERMISSIONS);

чтобы позволить пользователю возможность изменять настройки во время выполнения. этот код происходит, когда пользователь нажимает на кнопку. я пытаюсь получить информацию по своему выбору, для этого я использую метод onActivityResult. Но я заметил, что этот метод вызывается, когда пользователь нажимает на кнопку и входит в экран настроек.

Этот код находится во фрагменте, а не в активности.

1 ответ

Решение

Мне удалось решить эту проблему. Как я уже упоминал в моем вопросе - onActivityResult был вызван сразу после startActivityForResult.

Причиной этой проблемы были i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

Другие вопросы по тегам