Saltar a contenido

Permisos

Esta lista es la recopilación de todos los permisos que nos hemos ido encontrando a lo largo de los análisis de las aplicaciones. No es una lista exhaustiva de todos los permisos posibles que existen en Android, sino que se corresponden únicamente con las aplicaciones que ya analizamos. En ese sentido, es un repositorio que se irá actualizando con el tiempo.

La meta de tener esta base de datos es poder identificar cuáles son los permisos más utilizados, pero sobre todo, poder tener una guía rápidas de referencia que nos permita entender las funciones de los mismos.

Es importante aclarar que la implementación de los permisos en Android se relaciona directamente con las funciones de la aplicación en particular. Así, el viejo ejemplo de la aplicación de linterna que solicita el permiso de ubicación, sigue siendo un buen ejemplo. ¿Para qué me pide la ubicación una aplicación cuya única función es prender o apagar el flash del celular?

Ahora bien, la manera en la que un desarrollador A implemente una función en cierta aplicación, puede ser distinta de la manera que la implemente un desarrollador B. En ese sentido, bien podría ser que, para la misma función, dependiendo del tipo de aplicación y otros factores, los permisos sean distintos. Lo que nos interesa a nosotros en este proyecto es simplemente poder relacionar directamente el permiso con la función (no la manera en la que se implementó) y, por lo mismo, poder descubrir discrepancias y abusos.

Dejamos aquí el enlace a la documentación de permisos en Android.

Permiso Función Número de veces presente
ACCESS_BACKGROUND_LOCATION Acceso en segundo plano a la localización del dispositivo. Debe venir acompañado de otro permiso de localización ACCESS_COARSE_LOCATION o ACCESS_FINE_LOCATION 1
ACCESS_COARSE_LOCATION Acceso a la ubicación aproximada del dispositivo (definida por red) 4
ACCESS_FINE_LOCATION Acceso a la ubicación precisa del dispositivo (definida por la red y el GPS) 7
ACCESS_LOCATION_EXTRA_COMMANDS Permite el acceso a funciones extra de la localización 1
ACCESS_NETWORK_STATE Acceso a información sobre redes en el dispositivo 7
ACCESS_NOTIFICATION_POLICY Acceso a las reglas sobre notificaciones del celular 3
ACTION_DIAL Permite que se pueda abrir el marcado de teléfono con los datos prerellenados 1
ACTION_MANAGE_WRITE_SETTINGS Muestra la sección en Android donde se listan las apps que pueden modificar los ajustes del teléfono. Sirve para darle permisos a la app para modificar los ajustes del teléfono. 1
ACTIVITY_RECOGNITION Permite que la aplicación pueda reconocer actividad física. Acceso a sensores de movimiento, temperatura y demás. 1
ANSWER_PHONE_CALLS Permite que la aplicación responda de manera automática a llamadas de teléfono 1
AUTHENTICATE_ACCOUNTS Permite que la aplicación utilice funciones del "account manager", que incluye crear cuentas y asignarles contraseñas 1
BIND_GET_INSTALL_REFERRER_SERVICE Permite usar la API de instalación de la Playstore para recuperar cierta información como: La URL de referencia del paquete instalado La marca de tiempo, en segundos, de cuando se produjo un clic de referencia (tanto del cliente como del servidor) La marca de tiempo, en segundos, de cuando comenzó una instalación (tanto del cliente como del servidor) La versión de la app en el momento en que esta se instaló por primera vez Si el usuario interactuó con la experiencia instantánea de tu app en los últimos 7 días 4
BLUETOOTH Permite que la aplicación pueda conectarse a dispositivos Bluetooth 1
C2D_MESSAGE 2
CALL_PHONE Permite a una aplicación iniciar una llamada sin pasar por el marcado de teléfono para que el usuario confirme la llamada. 6
CALL_PRIVILEGE Permite a una aplicación iniciar una llamada sin pasar por el marcado de teléfono para que el usuario confirme la llamada. Incluye todo tipo de números, incluso de emergencia. 1
CAMERA Permite acceso a la cámara: tomar fotos y grabar video. 4
COARSE_LOCATION 1
FLASHLIGHT Permite el acceso al flash 1
FOREGROUND_SERVICE Permite que una aplicación se superponga a otras 6
GET_ACCOUNTS Permite identificar las cuentas registradas en el dispositivo 1
INTERACT_ACROSS_USERS_FULL 1
INTERNET Permite acceso completo a internet 7
MAPS_RECEIVE Permite el acceso al servicio de Mapas 2
MODIFY_AUDIO_SETTINGS Permite modificar los ajustes de audio del sistema 2
READ_CONTACTS Permite acceso a los contactos guardados en la libreta de direcciones de google 3
READ_EXTERNAL_STORAGE Permite la lectura del almacenamiento del teléfono 3
READ_GSERVICES Permite leer servicios de Google. Antes se utilizaba para los mapas. 4
READ_PHONE_STATE Permite el acceso de sólo lectura al estado del teléfono, que incluye cuentas en el teléfono, estado de cualquier llamada de teléfono que esté en curso e información sobre la red. 3
READ_SYNC_SETTINGS Permite leer los ajustes de sincronización del dispositivo 1
RECEIVE Permite recibir datos desde internet 6
RECEIVE_BOOT_COMPLETED Permite que la aplicación se ejecute automáticamente cuando se reinicia el teléfono 3
RECORD_AUDIO Permite grabar audio 2
RECORD_VIDEO Permite grabar video
SEND_SMS Permite mandar mensajes SMS 1
SYSTEM_ALERT_WINDOW Permite que la aplicación muestre ventanas de alerta por sobre todas las demás aplicaciones 2
VIBRATE Permite modificar el ajuste de vibración del teléfono 3
WAKE_LOCK Evita que el teléfono entre en modo de reposo 6
WRITE_CONTACTS Permite modificar y agregar contactos 1
WRITE_EXTERNAL_STORAGE Permite escribir y leer en el almacenamiento del teléfono 5
WRITE_SETTINGS Permite leer y modificar los ajustes del teléfono 1
WRITE_SYNC_SETTINGS Permite modificar los ajustes de sincronización del dispositivo 1