Ayuda a comprender los permisos de Whatsapp

15

Whatsapp me ha estado fastidiando durante los últimos días y tengo que actualizarlo para seguir usándolo. Con la adquisición de Facebook y Play Store ya no marca los permisos que son "NUEVOS" por separado, estoy en una situación difícil entre una actualización y una desinstalación; Espero que más información sobre los permisos ayude.

En primer lugar, ¿alguien sabe qué permisos se agregaron después de la adquisición de Facebook?
Y entre los permisos enumerados, ¿qué le permite a la aplicación "buscar cuentas en este dispositivo"? ¿"Recibir mensajes de texto" le permite a la aplicación leer mensajes SMS entrantes nuevos o existentes? Y como curiosidad menor, ¿por qué necesitaría la lista "recuperar aplicaciones en ejecución"?

Aquí está la lista de permisos de Play Store:

Esta aplicación tiene acceso a:

Compras en la aplicación

Dispositivo e historial de aplicaciones

  • recuperar aplicaciones en ejecución

Identidad

  • encontrar cuentas en el dispositivo
  • agregar o eliminar cuentas
  • lee tu propia tarjeta de contacto

Contactos / Calendario

  • lee tus contactos
  • modifica tus contactos

Ubicación

  • ubicación aproximada (basada en la red)
  • ubicación precisa (GPS y basada en red)

SMS

  • recibir mensajes de texto (SMS)
  • enviar mensajes SMS

Teléfono

  • llamar directamente a los números de teléfono

Fotos / Medios / Archivos

  • modificar o eliminar el contenido de su almacenamiento USB
  • prueba de acceso al almacenamiento protegido

Cámara / micrófono

  • grabar audio
  • tomar fotos y videos

Información de conexión wifi

  • ver conexiones wifi

ID del dispositivo e información de la llamada

  • leer el estado del teléfono y la identidad

Otro

  • recibir datos de internet
  • leer estadísticas de sincronización
  • evitar que el dispositivo duerma
  • acceso completo a la red
  • control de vibración
  • ejecutar en el arranque
  • ver conexiones de red
  • conectarse y desconectarse de Wi-Fi
  • usar cuentas en el dispositivo
  • crear cuentas y establecer contraseñas
  • modificar la configuración del sistema
  • leer la configuración de sincronización
  • activar y desactivar la sincronización
  • instalar atajos
  • desinstalar accesos directos
  • leer la configuración del servicio de Google
  • cambiar la configuración de audio
sundar - Restablecer a Monica
fuente
Un nuevo permiso que aparece en las versiones actuales de WhatsApp es android.permission.NFC- sería interesante saber por qué necesitan esto cc
ccpizza

Respuestas:

15

También envié esta pregunta por correo electrónico al soporte de WhatsApp, y ahora recibí una respuesta de ellos con explicaciones completas de los permisos. Pegando esa respuesta a continuación:


Gracias por tu mensaje. Nos esforzamos por mantener esta información lo más actualizada y precisa posible.
Sin embargo, a veces, es posible que Google o el fabricante de su teléfono puedan cambiar, desaprobar o eliminar varios permisos.

Categoría: Tus mensajes

Permiso : reciba mensajes de texto (android.permission.RECEIVE_SMS)
Explicación : Usamos esto para poder leer los SMS que enviamos a su teléfono para verificar su número de teléfono.

Categoría: Almacenamiento

Permiso : modifique o elimine el contenido de su almacenamiento USB (android.permission.WRITE_EXTERNAL_STORAGE)
Explicación : Almacenamos sus copias de seguridad de historial de medios y chat en el almacenamiento USB.

Categoría: Herramientas del sistema

Permiso : Modifique la configuración del sistema (android.permission.WRITE_SETTINGS)
Explicación : Necesitamos esto para leer su configuración, no escribimos ninguna configuración, pero solo hay un permiso de configuración de escritura que incluye la capacidad de leer la configuración.
Permiso : instale accesos directos (com.android.launcher.permission.INSTALL_SHORTCUT)
Explicación : Usamos esto para instalar un acceso directo de WhatsApp o acceso directo de conversación en su pantalla de inicio.
Permiso : desinstalar accesos directos (com.android.launcher.permission.UNINSTALL_SHORTCUT)
Explicación : Usamos esto para asegurarnos de no crear accesos directos duplicados en su pantalla de inicio.

Categoría: Tu ubicación

Permiso : ubicación aproximada (basada en la red) (android.permission.ACCESS_COARSE_LOCATION)
Explicación : Usamos esto para que pueda enviar su ubicación a sus amigos.
Permiso : ubicación precisa (GPS) (android.permission.ACCESS_FINE_LOCATION)
Explicación : Usamos esto para que pueda enviar su ubicación a sus amigos.

Categoría: Servicios que le cuestan dinero

Permiso : llame directamente a los números de teléfono (android.permission.CALL_PHONE)
Explicación : Necesitamos esto para poder tener la capacidad de "Llamar" en la aplicación.
Permiso : envíe mensajes SMS (android.permission.SEND_SMS)
Explicación : Puede enviar un SMS utilizando nuestra función de decirle a un amigo para contarle a un amigo sobre WhatsApp.

Categoría: Cámara

Permiso : tome fotos o videos (android.permission.CAMERA)
Explicación : Usamos esto para permitirle tomar fotos desde WhatsApp. Lee más aquí

Categoría: Micrófono

Permiso : grabar audio (android.permission.RECORD_AUDIO)
Explicación : Usamos esto para permitirle grabar notas de voz para enviar a sus amigos.

Categoría: Tus cuentas

Permiso : Agregar o quitar cuentas (android.permission.MANAGE_ACCOUNTS)
Explicación : Usamos esto para agregar una cuenta de WhatsApp a su dispositivo para mostrar sus contactos de WhatsAppable.
Permiso : cree cuentas y establezca contraseñas (android.permission.AUTHENTICATE_ACCOUNTS)
Explicación : Usamos esto para agregar una cuenta de WhatsApp a su dispositivo.
Permiso : use cuentas en el dispositivo (android.permission.USE_CREDENTIALS)
Explicación : Necesitamos este permiso para leer y escribir sus credenciales de WhatsApp.
Permiso : buscar cuentas en el dispositivo (android.permission.GET_ACCOUNTS)
Explicación: Esto es necesario para encontrar las cuentas para verificar los contactos de WhatsApp.
Permiso : lea la configuración del servicio de Google (android.providers.gsf.permission.READ_GSERVICES)
Explicación : Esto se utiliza para la integración de Google Maps en el intercambio de ubicaciones de WhatsApp.

Categoría: Tu información social

Permiso : modifique sus contactos (android.permission.WRITE_CONTACTS)
Explicación : Esto es necesario para que podamos agregar el botón WhatsApp en sus contactos para que pueda enviar un WhatsApp a sus amigos desde cualquier lugar de su teléfono.
Permiso : lea sus contactos (android.permission.READ_CONTACTS)
Explicación : Usamos esto para agregar automáticamente a todos sus amigos que tienen WhatsApp instalado en sus teléfonos.

Categoría: su información personal

Permiso : lea su propia tarjeta de contacto (android.permission.READ_PROFILE)
Explicación : Usamos esto para intentar establecer un nombre de perfil predeterminado.
Permiso : leer el registro de llamadas (android.permission.READ_CALL_LOG)
Explicación : Este permiso no es necesario pero se otorga de forma transitiva desde READ_CONTACTS porque admitimos versiones antiguas de Android.
Permiso : escriba el registro de llamadas (android.permission.WRITE_CALL_LOG)
Explicación : Este permiso no es necesario pero se otorga de forma transitiva desde WRITE_CONTACTS porque admitimos versiones antiguas de Android.

Categoría: llamadas telefónicas

Permiso : lea el estado y la identidad del teléfono (android.permission.READ_PHONE_STATE)
Explicación : Necesitamos esto para no molestarlo cuando esté hablando por teléfono.

Categoría: información de sus aplicaciones

Permiso : ejecutar al inicio (android.permission.RECEIVE_BOOT_COMPLETED)
Explicación : Usamos esto para asegurarnos de que la aplicación se esté ejecutando para asegurarnos de que reciba sus mensajes a tiempo. Permiso : recupere aplicaciones en ejecución (android.permission.GET_TASKS)
Explicación : Necesitamos esto para ver si está ejecutando Task Killers, lo que puede causar problemas con nuestra aplicación.

Categoría: Configuración de sincronización

Permiso : lea la configuración de sincronización (android.permission.READ_SYNC_SETTINGS)
Explicación : Usamos esto para asegurarnos de que reciba sus mensajes a tiempo.
Permiso : lea las estadísticas de sincronización (android.permission.READ_SYNC_STATS)
Explicación : Usamos esto para depurar posibles problemas para recibir sus mensajes a tiempo. Permiso : active y desactive la sincronización (android.permission.WRITE_SYNC_SETTINGS)
Explicación : Usamos esto para asegurarnos de que sus contactos de WhatsApp estén actualizados.

Categoría: herramientas de desarrollo

Permiso : prueba de acceso al almacenamiento protegido (android.permission.READ_EXTERNAL_STORAGE)
Explicación : Almacenamos datos en el almacenamiento externo. El permiso se otorga de forma transitiva por android.permission.WRITE_EXTERNAL_STORAGE. No tenemos idea de por qué Google describe el permiso de esta manera.

Categoría: Afecta la batería

Permiso : control de vibración (android.permission.VIBRATE)
Explicación : para notificarle un nuevo mensaje, podemos hacer vibrar su teléfono.
Permiso : evite que el teléfono duerma (android.permission.WAKE_LOCK)
Explicación : Necesitamos esto para asegurarnos de que cuando un amigo le envíe un archivo, su teléfono no lo rompa.

Categoría: comunicación de red

Permiso : acceso completo a la red (android.permission.INTERNET)
Explicación : Sin esto, no podríamos enviar sus mensajes de chat.
Permiso : servicio de facturación de Google Play (com.android.vending.BILLING)
Explicación : Usamos esto para permitirle pagar la suscripción de WhatsApp.
Permiso : reciba datos de internet (com.google.android.c2dm.permission.RECEIVE)
Explicación : Usamos esto para asegurarnos de que reciba sus mensajes a tiempo.
Permiso : ver las conexiones wifi (android.permission.ACCESS_WIFI_STATE)
Explicación : Usamos esto para verificar y ver si está conectado a un Wi-Fi en el que WhatsApp no ​​funcionará.
Permiso : ver las conexiones de red (android.permission.ACCESS_NETWORK_STATE)
Explicación : Usamos esto para diagnosticar su conexión de red y hacer que la aplicación reaccione en consecuencia para garantizar que reciba sus mensajes a tiempo.
Permiso : acceso completo a la red (android.permission.INTERNET)
Explicación : Necesitamos esto para abrir conexiones de socket a nuestros servidores para que el envío y la recepción de mensajes sean rápidos.

sundar - Restablecer a Monica
fuente
3

Todos los permisos de " Identidad " son para el sistema de notificación push, que se implementa utilizando Google Cloud Messaging en Android y requiere una cuenta válida de Google para estar presente en el dispositivo.

Los permisos de " SMS " y " Teléfono " son para la activación de la cuenta de WhatsApp cuando está recién instalada en un dispositivo y para enviar una acción de llamada cuando presiona el número de teléfono de un contacto de WhatsApp en particular.

Supongo que el permiso " Historial de dispositivos y aplicaciones " debe ser para administrar el uso de RAM por parte de WhatsApp. Esto debería variar de una versión de Android a otra.

El resto de los permisos se explican más o menos por sí mismos, pero en caso de que desee detalles para alguno de ellos, simplemente ponga un comentario, se lo explicaré.

Recomiendo que actualice su aplicación de WhatsApp ya que eliminan el soporte para versiones anteriores después de un tiempo.

Además, Android Police ha subido el APK para la última versión de Play Store que muestra los permisos antiguos y nuevos de una mejor manera.

WhatsApp mantiene una versión poco más alto de su aplicación a la disponible en la Play Store más aquí (en caso de que nos interesa).

Chipset
fuente
1

Primero, para preguntas generales sobre qué significa un permiso (y qué podría hacer una aplicación con él), puede encontrar una buena descripción en mi sitio de Android . Me llevó bastante investigación recopilar toda la información disponible, y aún está incompleta; No puedo entender que no haya una fuente oficial para usuarios finales.

A sus preguntas explícitas:

  • Sí, en RECEIVE_SMSteoría , una aplicación podría "comer" sus mensajes, es decir, esconderlos debajo de la nariz para que ni siquiera se dé cuenta de que había uno.
  • GET_ACCOUNTSes necesario para buscar cuentas con las que se haya registrado desde su dispositivo. La API hace que sea obligatorio si desea utilizar una cuenta ( USE_CREDENTIALSpermiso). Aunque parece bastante sospechoso si una aplicación solicita la primera pero no la segunda: ¿para qué necesitaría saber las cuentas disponibles, si no quiere usar una? Para obtener más detalles, consulte también ¿Qué puede hacer una aplicación con el permiso "USAR CUENTAS EN EL DISPOSITIVO"? Me pregunto si USE_CREDENTIALSfalta en su lista, ya que Whatsapp ciertamente necesitará eso: también tiene el MANAGE_ACCOUNTSpermiso (para crear / administrar su cuenta de Whatsapp en su dispositivo), lo que podría implicar al otro (no estoy seguro de eso debido a la falta de documentación).
  • El GET_TASKSpermiso es otro que a menudo levanta mi ceja. Si bien está bastante claro por qué un administrador de procesos (o asesino de tareas) necesitaría eso, no veo ninguna razón por la cual Whatsapp debería estar interesado en eso. Lo cual no significa automáticamente que no es tal motivo; Por ejemplo, tendría sentido si una aplicación necesita verificar si se está ejecutando una aplicación complementaria, para algunas acciones compartidas (no soy un desarrollador de Android, así que tengo que dejar esta parte a otra persona).

Lamento no continuar mis explicaciones para la lista completa de permisos que ha publicado, pero eso sería bastante largo. Sea bienvenido a visitar el primer enlace en mi respuesta para conocer más detalles por sí mismo. Y, por supuesto, si esto plantea preguntas específicas, Android.SE es el lugar adecuado para hacerlas.

Izzy
fuente
> con RECEIVE_SMS una aplicación teóricamente podría "comerse" sus mensajes | finalizar cotización | Pero no pudo leer el SMS y luego pasarlo a una aplicación de mensajería, ¿verdad? Es dejarlo solo o engullirlo, ¿verdad? Si es así, puedo vivir con eso.
sundar - Restablecer Monica
No estoy seguro de eso. Sí, hay un READ_SMSpermiso por separado . Pero solo vi aplicaciones solicitando RECEIVE_SMS. ¿Qué sentido tendría eso? Supongo que READ_SMSes para los ya guardados ("viejo" SMS, por así decirlo). Si puedo "recibir" un artículo, tengo acceso completo a él. No estoy seguro acerca de la parte de "transmisión". Tal vez un desarrollador podría arrojar algo de luz aquí.
Izzy
1
@sundar Tomé esa parte de su preocupación aquí: ¿Se puede usar el permiso RECEIVE_SMS para interceptar mensajes SMS? Puede hacer un seguimiento (por ejemplo, marcarlo para ver cuándo alguien responde).
Izzy