причина проста: некоторые API-интерфейсы работают для разрешения на чтение из системы android, когда они пытаются получить доступ к личным данным пользователя. Android, разработанная как безопасная ОС, предоставит разрешения для предоставления таких данных этим API. Некоторые разрешения должны быть явно согласованы пользователем, в то время как некоторые должны быть зарегистрированы только для отслеживания.
Если не включить эти разрешения в Манифест, это приведет к ошибке «Разрешение не предоставлено», и приложение взломает sh, поскольку ваш исходный код, вероятно, не имеет логики c, чтобы справиться с этим.