Как централизовать разрешение времени выполнения, когда у нас есть несколько действий

Извините за мой плохой английский.

У меня есть несколько Activity в моем приложении, мне нужно централизовать разрешение на использование во время выполнения.

Нужно ли использовать BaseActivity ?

Если да, пожалуйста, предложите мне, как обращаться с ним в случае многих Activity в приложении.

Если нет, предложите лучший подход к его обработке.

Я хочу уменьшить избыточность кода. Не интересно писать один и тот же код снова и снова с каждым действием.

Я ищу отрицательный сценарий, где пользователь отказал в разрешении, и я должен показать рациональность, вместо того чтобы продолжать просить разрешения. И на основании этого я должен предоставить сообщение или мне нужно обновить интерфейс

    Если у вас 10 видов деятельности, и все они нуждаются в разрешении на размещение. Затем я думаю, что это очень важное разрешение для вашего приложения.

    Для получения критического разрешения, если оно не разрешено пользователем, вы можете закрыть свое приложение, следовательно, сделать это на самой первой активности. Как и в facebook, для разных разрешений. Это может быть плохой опыт для пользователя, но это необходимо для вашего приложения.

    Просто напишите его один раз в первом действии и остановите приложение, если оно не разрешено пользователем. Многие флагманские приложения делают это.

    Были введены разрешения на время работы для контроля над опасными ресурсами

    Поэтому в идеале вы должны проверять разрешение каждый раз, когда используете ресурс. Этот код нельзя исключать.

    Затем, когда требуется запросить разрешение, это один строковый код. Я не думаю, что у вас есть проблемы с этим.

    Теперь наступает сложная часть. Обработка предоставленных разрешений. У вас определенно есть базовый класс (не рекомендуется), но в идеале другое разрешение используется для разных целей.

    Например, разрешение на размещение:
    В той же Деятельности скажите Location.java, мне может понадобиться разрешение на размещение адреса человека, использующего значения LatLon, и в той же самой работе я использую разрешение на размещение для прямого отслеживания пользователя.

    Теперь для обработки различных реализаций для того же разрешения вы должны иметь уникальные коды разрешений на основе этой цели, но не на основе ресурса, к которому вы обращаетесь. Обработка всех этих вещей в базовом классе может быть сложной задачей. Поэтому в идеале вы должны обрабатывать разрешение в том виде, в котором оно принадлежит. Он сохранит ваш код в безопасности и предотвратит любые путаницы с другими кодами.

    Всегда рекомендуется читать официальные документы .

    Могут быть случаи, когда вы можете запутаться в избыточности кодов и нескольких реализаций. Для этого Android обрабатывает большую часть кода в своем конце, как программист, наименее ожидаемым является проверка разрешений и выполнение соответствующих операций везде, где используются опасные ресурсы.