Технически, да. Если app-A и app-B являются двумя отдельными приложениями, каждому из них требуется собственный набор разрешений и запросов разрешений.
И нет, если разрешение ранее было разрешено, то установка более новой версии не сбрасывает состояние этого разрешения.
Однако, если вы хотите, чтобы app-B сохранял те же состояния разрешений, что и app-A, вам следует рассмотреть что-то под названием android: sharedUserId . Если приложение-A имеет тот же sharedUserId , что и приложение-B, то приложение-B будет иметь те же состояния разрешений, что и приложение-A, и наоборот.
Я не смог найти ни одного сообщения, в котором бы в достаточной мере говорилось о состоянии общего доступа между приложениями с одним и тем же, но вы можете проверить некоторые из этих сообщений для дополнительных заметок:
Я провел быструю проверку и могу подтвердить, что два приложения с одинаковым sharedUserId имеют общие права доступа, поэтому попробуйте сами. Просто настройте пример проекта / приложения, которое проверяет и запрашивает разрешение, клонируйте его, дайте им одинаковые sharedUserId
, установите оба из них, разрешите разрешение для одного, и вы увидите, что оно уже находится в разрешенном состоянии на другой.