Я хочу спросить пользователя, хочет ли он предоставить разрешение на его точное местоположение, и только если он предоставит его, я хочу заменить фрагмент и открыть фрагмент локатора. В фрагментах локатора есть некоторые магазины, которые пользователь может видеть по своему местоположению. Если он не разрешает доступ к прекрасному местоположению, я хочу показать ему правильное сообщение. Это код:Разрешить удаленное определение места для замены фрагмента
else if (id == R.id.nav_locator) {
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
1);
fragment = new LocatorFragment();
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.fragmentlayout, fragment);
ft.commit();
Применение в настоящее время сбой, поскольку он будет немедленно начать заменить фрагмент, и он будет врезаться, потому что заменить, прежде чем пользователь может выбрать, чтобы утвердить или не утвердить местоположение.
Так что в принципе мне нужно идея какой-то петли или что-то, которое будет игнорировать запрос пользователя, если он не разрешит разрешение и покажет ему адекватное сообщение. И если он решил предоставить, мне нужно заменить фрагмент как обычный.
Переместить фрагментный код в 'onRequestPermissionsResult' .. !! – AndiGeeky
Я сделал, что он работает, но в первый раз, когда я предоставляю разрешение на приложение close .O –
Вы имеете в виду какую-либо ошибку там, так что приложение близко или просто ваше требование закрыть приложение? – AndiGeeky