Помогите понять разрешения WhatsApp

15

Последние несколько дней WhatsApp мучает меня тем, что я должен обновить его, чтобы продолжать его использовать. С приобретением Facebook и Play Store больше не отмечаются отдельно «НОВЫЕ» разрешения, я нахожусь в затруднительном положении между обновлением и удалением; Я надеюсь, что дополнительная информация о разрешениях поможет.

Прежде всего, кто-нибудь знает, какие разрешения были добавлены после приобретения Facebook?
И что из перечисленных разрешений позволяет приложение «найти учетные записи на этом устройстве»? Позволяет ли "получать текстовые сообщения" приложению читать какие-либо существующие или новые входящие SMS-сообщения? И в качестве небольшого любопытства, зачем ему нужен список "Retrive Running Apps"?

Вот список разрешений из Play Store:

Это приложение имеет доступ к:

Покупки в приложении

История устройства и приложения

  • получить запущенные приложения

тождественность

  • найти аккаунты на устройстве
  • добавить или удалить учетные записи
  • прочитайте свою собственную карточку контакта

Контакты / Календарь

  • читать ваши контакты
  • изменить ваши контакты

Место расположения

  • приблизительное местоположение (на основе сети)
  • точное местоположение (GPS и сеть)

смс

  • получать текстовые сообщения (SMS)
  • отправлять смс сообщения

Телефон

  • напрямую звонить по телефонам

Фотографии / СМИ / файлы

  • изменить или удалить содержимое вашего USB-накопителя
  • проверить доступ к защищенному хранилищу

Камера / Микрофон

  • запись аудио
  • снимать фотографии и видео

Информация о подключении к Wi-Fi

  • просматривать Wi-Fi соединения

Идентификатор устройства и информация о вызове

  • читать статус телефона и личность

Другой

  • получать данные из интернета
  • читать статистику синхронизации
  • предотвратить устройство от сна
  • полный доступ к сети
  • контролировать вибрацию
  • запускаться при старте
  • просмотреть сетевые подключения
  • подключиться и отключиться от Wi-Fi
  • использовать учетные записи на устройстве
  • создавать учетные записи и устанавливать пароли
  • изменить настройки системы
  • читать настройки синхронизации
  • включить и выключить синхронизацию
  • установить ярлыки
  • удалить ярлыки
  • читать конфигурацию сервиса Google
  • изменить настройки звука
sundar - Восстановить Монику
источник
Новое разрешение, которое появляется в текущих версиях WhatsApp, android.permission.NFC- было бы интересно узнать, зачем им это нужно
ccpizza

Ответы:

15

Я также отправил этот вопрос по электронной почте в службу поддержки WhatsApp, и теперь я получил от них ответ с полным объяснением разрешений. Вставить этот ответ ниже:


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

Категория: Ваши сообщения

Разрешение : получение текстовых сообщений (android.permission.RECEIVE_SMS).
Объяснение : Мы используем это, чтобы иметь возможность прочитать SMS-сообщение, отправленное на ваш телефон, чтобы подтвердить номер вашего телефона.

Категория: Хранение

Разрешение : измените или удалите содержимое вашего USB-накопителя (android.permission.WRITE_EXTERNAL_STORAGE).
Объяснение : Мы сохраняем ваши резервные копии мультимедиа и истории чата на USB-накопителе.

Категория: Системные инструменты

Разрешение : Изменить системные настройки (android.permission.WRITE_SETTINGS)
Объяснение : Нам нужно это, чтобы прочитать ваши настройки, мы не пишем никаких настроек, но есть только разрешение на запись настроек, которое включает в себя возможность чтения настроек.
Разрешение : установить ярлыки (com.android.launcher.permission.INSTALL_SHORTCUT)
Объяснение : Мы используем его для установки ярлыка WhatsApp или ярлыка разговора на домашнем экране.
Разрешение : удалить ярлыки (com.android.launcher.permission.UNINSTALL_SHORTCUT)
Объяснение : Мы используем это, чтобы не создавать дубликаты ярлыков на рабочем столе.

Категория: Ваше местоположение

Разрешение : приблизительное (сетевое) местоположение (android.permission.ACCESS_COARSE_LOCATION)
Объяснение : Мы используем это, чтобы вы могли отправить свое местоположение своим друзьям.
Разрешение : точное (GPS) местоположение (android.permission.ACCESS_FINE_LOCATION)
Объяснение : Мы используем это, чтобы вы могли отправить свое местоположение своим друзьям.

Категория: Услуги, которые стоят вам денег

Разрешение : напрямую позвоните по телефонным номерам (android.permission.CALL_PHONE).
Объяснение : Нам это нужно, чтобы в приложении была возможность вызова.
Разрешение : отправлять SMS-сообщения (android.permission.SEND_SMS)
Объяснение : Вы можете отправить SMS-сообщение с помощью функции «Расскажи другу», чтобы сообщить другу о WhatsApp.

Категория: Камера

Разрешение : Снимайте фотографии или видео (android.permission.CAMERA).
Объяснение : Мы используем это, чтобы позволить вам делать снимки из WhatsApp. Узнайте больше здесь

Категория: Микрофон

Разрешение : запись аудио (android.permission.RECORD_AUDIO).
Объяснение : Мы используем это, чтобы позволить вам записывать голосовые заметки для отправки своим друзьям.

Категория: Ваши аккаунты

Разрешение : добавление или удаление учетных записей (android.permission.MANAGE_ACCOUNTS).
Объяснение : Мы используем это для добавления учетной записи WhatsApp на ваше устройство для отображения контактов WhatsAppable.
Разрешение : создать учетные записи и установить пароли (android.permission.AUTHENTICATE_ACCOUNTS)
Объяснение : Мы используем это для добавления учетной записи WhatsApp на ваше устройство.
Разрешение : использовать учетные записи на устройстве (android.permission.USE_CREDENTIALS).
Объяснение : Нам нужно это разрешение для чтения и записи учетных данных WhatsApp.
Разрешение : найти учетные записи на устройстве (android.permission.GET_ACCOUNTS)
Объяснение: Это необходимо, чтобы найти учетные записи для проверки контактов WhatsApp.
Разрешение : прочитайте конфигурацию службы Google (android.providers.gsf.permission.READ_GSERVICES)
Объяснение : Это используется для интеграции Google Maps в общий доступ к местоположению в WhatsApp.

Категория: Ваша социальная информация

Разрешение : измените свои контакты (android.permission.WRITE_CONTACTS)
Объяснение : Это необходимо для того, чтобы мы могли добавить кнопку WhatsApp в ваши контакты, чтобы вы могли отправлять WhatsApp своим друзьям из любой точки вашего телефона.
Разрешение : прочитайте ваши контакты (android.permission.READ_CONTACTS)
Объяснение : Мы используем это для автоматического добавления всех ваших друзей, у которых WhatsApp установлен на их телефонах.

Категория: Ваша личная информация

Разрешение : прочитайте свою собственную карточку контакта (android.permission.READ_PROFILE)
Объяснение : Мы используем это, чтобы попытаться установить имя профиля по умолчанию.
Разрешение : чтение журнала вызовов (android.permission.READ_CALL_LOG).
Объяснение : Это разрешение не требуется, но предоставляется транзитивно от READ_CONTACTS, поскольку мы поддерживаем старые версии Android.
Разрешение : запись журнала вызовов (android.permission.WRITE_CALL_LOG)
Объяснение : Это разрешение не требуется, но предоставляется транзитивно от WRITE_CONTACTS, потому что мы поддерживаем старые версии Android.

Категория: Телефонные звонки

Разрешение : прочитать статус телефона и личность (android.permission.READ_PHONE_STATE)
Объяснение : Это нужно нам, чтобы мы не раздражали вас, когда вы разговариваете по телефону.

Категория: Информация о ваших приложениях

Разрешение : запускать при запуске (android.permission.RECEIVE_BOOT_COMPLETED)
Объяснение : Мы используем это, чтобы убедиться, что приложение работает, чтобы убедиться, что вы получаете ваши сообщения вовремя. Разрешение : получить запущенные приложения (android.permission.GET_TASKS).
Объяснение : Нам это нужно для того, чтобы увидеть, запускаете ли вы какие-либо Task Killers, которые могут вызвать проблемы с нашим приложением.

Категория: Настройки синхронизации

Разрешение : прочитать настройки синхронизации (android.permission.READ_SYNC_SETTINGS)
Объяснение : Мы используем это, чтобы убедиться, что вы получаете ваши сообщения вовремя.
Разрешение : прочитать статистику синхронизации (android.permission.READ_SYNC_STATS)
Объяснение : Мы используем это для устранения возможных проблем при получении ваших сообщений вовремя. Разрешение : включить и выключить синхронизацию (android.permission.WRITE_SYNC_SETTINGS)
Объяснение : Мы используем это, чтобы убедиться, что ваши контакты в WhatsApp актуальны.

Категория: Средства разработки

Разрешение : проверить доступ к защищенному хранилищу (android.permission.READ_EXTERNAL_STORAGE)
Объяснение : Мы храним данные на внешнем хранилище. Разрешение предоставляется транзитивно android.permission.WRITE_EXTERNAL_STORAGE. Мы понятия не имеем, почему Google описывает разрешение таким образом.

Категория: Влияет на батарею

Разрешение : контроль вибрации (android.permission.VIBRATE)
Объяснение : чтобы уведомить вас о новом сообщении, мы можем вибрировать ваш телефон.
Разрешение : запретить переход телефона в спящий режим (android.permission.WAKE_LOCK)
Объяснение : Это необходимо для того, чтобы при отправке друзьям файла вам он не сломался, если ваш телефон перейдет в спящий режим.

Категория: Сетевые коммуникации

Разрешение : полный доступ к сети (android.permission.INTERNET)
Объяснение : Без этого мы не сможем отправлять ваши сообщения чата.
Разрешение : служба биллинга Google Play (com.android.vending.BILLING).
Объяснение : Мы используем это, чтобы позволить вам оплатить подписку WhatsApp.
Разрешение : получать данные из Интернета (com.google.android.c2dm.permission.RECEIVE).
Объяснение : Мы используем это, чтобы убедиться, что вы получаете ваши сообщения вовремя.
Разрешение : просмотр подключений Wi-Fi (android.permission.ACCESS_WIFI_STATE).
Объяснение : Мы используем это, чтобы проверить, есть ли у вас Wi-Fi, с которым WhatsApp работать не будет.
Разрешение : просмотр сетевых подключений (android.permission.ACCESS_NETWORK_STATE).
Объяснение : Мы используем это для диагностики вашего сетевого подключения, и приложение реагирует соответствующим образом, чтобы обеспечить своевременное получение сообщений.
Разрешение : полный доступ к сети (android.permission.INTERNET).
Объяснение : Это необходимо для открытия сокет-подключений к нашим серверам для быстрой отправки и получения сообщений.

sundar - Восстановить Монику
источник
3

Полные разрешения « Идентичность » предназначены для системы push-уведомлений, которая реализована с помощью Google Cloud Messaging на Android и требует наличия действительной учетной записи Google на устройстве.

Разрешения « SMS » и « Телефон » предназначены для активации учетной записи WhatsApp, когда она только что установлена ​​на устройстве, и для отправки действия вызова, когда вы нажимаете номер телефона определенного контакта WhatsApp.

Я предполагаю, что разрешение « История устройства и приложения » должно быть для управления использованием ОЗУ самим WhatsApp. Это должно варьироваться от одной версии Android к другой.

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

Я бы порекомендовал вам обновить приложение WhatsApp, так как через некоторое время будет удалена поддержка предыдущих версий.

Кроме того, Android Police загрузила APK для последней сборки Play Store, которая показывает старые и новые разрешения в лучшем виде.

WhatsApp поддерживает немного выше версию своего приложения , чем доступно на Play Store , через здесь (только в случае , если интересно).

Набор микросхем
источник
1

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

На ваши явные вопросы:

  • Да, с RECEIVE_SMSпомощью приложения теоретически можно «съесть» ваши сообщения, то есть скрыть их под носом, чтобы вы даже не заметили их.
  • GET_ACCOUNTSнеобходим для поиска учетных записей, которые вы зарегистрировали с вашего устройства. API делает это обязательным, если вы хотите использовать учетную запись ( USE_CREDENTIALSразрешение). Хотя это выглядит довольно подозрительно, если приложение запрашивает первое, но не второе: зачем ему нужно знать доступные учетные записи, если оно не хочет их использовать? Дополнительные сведения см. Также в разделе « Что может делать приложение с разрешением« ИСПОЛЬЗОВАТЬ СЧЕТА НА УСТРОЙСТВЕ »? Мне интересно, что USE_CREDENTIALSотсутствует в вашем списке, поскольку Whatsapp, безусловно, понадобится следующее: у него также есть MANAGE_ACCOUNTSразрешение (для создания / управления учетной записью WhatsApp на вашем устройстве), что может подразумевать другое (не уверенное в этом из-за отсутствия документация).
  • GET_TASKSРазрешение является еще один , который часто поднимает мою бровь. Хотя совершенно ясно, зачем это нужно менеджеру процессов (или убийце задач), я не вижу причин, по которым Whatsapp может быть заинтересован в этом. Что не означает автоматически , там нет никакой такой причины; например, имело бы смысл, если приложение должно проверить, запущено ли сопутствующее приложение, для каких-то общих действий (я не разработчик Android, поэтому я должен оставить эту часть кому-то другому).

Извините, что я не продолжаю объяснения для полного списка разрешений, которые вы опубликовали, но это может занять довольно много времени. Не стесняйтесь посетить первую ссылку в моем ответе, чтобы узнать больше деталей для себя. И, конечно, если это вызывает конкретные вопросы, Android.SE - это то, что вам нужно!

Иззи
источник
> с помощью RECEIVE_SMS приложение может теоретически «съесть» ваши сообщения | end quote | Но он не мог прочитать SMS, а затем передать его в приложение обмена сообщениями, не так ли? Это либо оставить в покое, либо поглотить, верно? Если так, я могу жить с этим.
sundar - Восстановить Монику
Я не уверен в этом. Да, есть отдельное READ_SMSразрешение. Но я видел приложения только запрашивающие RECEIVE_SMS. Какой смысл в этом? Я предполагаю, READ_SMSчто для уже сохраненных (так сказать, «старых» СМС). Если я могу «получить» предмет, у меня есть полный доступ к нему. Не уверен насчет «передачи». Может быть, разработчик мог бы пролить немного света здесь.
Иззи
1
@sundar Я принял эту часть вашей озабоченности здесь: можно ли использовать разрешение RECEIVE_SMS для перехвата SMS-сообщений? Вы можете продолжить (например, пометить, чтобы увидеть, когда кто-то отвечает).
Иззи