У меня возникла странная проблема, которая вызывает конфликт. Мне пришлось переключиться на native Fragments
, чтобы исправить это, но есть ошибки с этим.
Моя первоначальная проблема: у меня есть настройка ящика для навигации с помощью v4 Fragments.
Чтобы запросить разрешение в одном из моих фрагментов, я вызываю ActivityCompat.requestPermissions(getActivity(), Manifest.permission.ACCESS_FINE_LOCATION, 1);
Свидание отображается просто отлично, но когда я принимаю или отклоняю разрешение, ничего не происходит. Обратный вызов onRequestPermissionsResult()
никогда не вызывается. Вместо этого он вызывает в Activity, к которому привязаны мои фрагменты. Бесполезный для меня, мне нужен обратный вызов для работы во Фрагменте.
С учетом этого мне сказали, что мне нужно использовать FragmentCompat
, но это работает только с native Fragments (v13+)
, поэтому я изменил навигационный ящик для работы с родными фрагментами, а не с библиотекой поддержки V4 Fragments. Однако, поскольку я использую AppCompatActivity, некоторые вещи не работают, например addToBackStack()
и возвращаются к предыдущему фрагменту.
Короче говоря, кто-нибудь знает, как я могу использовать v4.Fragment
и все еще вызывать разрешение в Fragment
и получить обратный вызов в Fragment
? Я чувствую, что это ошибка в Android, которая не была устранена, но я не на 100%.
Дайте мне знать, если вам нужно увидеть мой код, это просто стандартные методы, необходимые для разрешений времени выполнения, я хотел бы работать с фрагментами V4, хотя это не работает из моего понимания.