domingo, 7 de abril de 2013

Permisos en Android.

Para establecer permisos a una aplicación android, se hace en el archivo AndroidManifest.xml de la siguiente manera:
Los permisos mas usados en Android son:

  • CALL_PHONE Servicios por los que tienes que pagar – llamar directamente a números de teléfono (muy alta) Permite realizar llamadas sin la intervención del usuario.
  • SEND_SMS Servicios por los que tienes que pagar – envío SMS/MMS (muy alta) Permite a la aplicación mandar SMS.
  • WRITE_EXTERNAL_STORAGE Almacenamiento – modificar/borrar archivos en SD (alta) Permites la lectura de archivos y su modificación, típico en aplicaciones de backup.
  • READ_OWNER_DATA Tu información personal – leer datos de contacto (alta) Permiten leer información sobre el propietario del teléfono (nombre, correo electrónico, número de teléfono). Muy peligroso, algunas aplicaciones podrían utilizar esta información de forma no lícita.
  • READ_CALENDAR Tu información personal – leer datos de calendario (moderada) Solo da este permiso si consideras que la aplicación realmente lo necesita.
  • WRITE_CALENDAR Tu información personal – escribir datos de calendario (moderada) Este permiso no permite leer el calendario. Por las mismas razones que el anterior permiso, hay que plantearse si una aplicación nos pide este permiso con sentido o no.
  • READ_PHONE_STATE Llamadas de teléfono - leer estado del teléfono e identidad (alta) Muchas aplicaciones piden este permiso para ponerse en pausa mientras hablas por teléfono. Sin embargo, también permite el acceso al IMEI, IMSI y al identificador único de 64 bits que Google asigna a cada terminal. En las primeras versiones de SDK este permiso no era necesario.
  • ACCESS_FINE_LOCATION Tu ubicación – precisar la ubicación (GPS) (moderada) Localización basada en GPS.
  • ACCESS_COARSE_LOCATION Tu ubicación – ubicación común (basada en red) (moderada) Localización basada en telefonía móvil (Cel-ID) y Wi-Fi.
  • BLUETOOTH Comunicación de red crear conexión Bluetooth (baja) Conexión con otro dispositivo Bluetooth.
  • INTERNET Comunicación de red – acceso íntegro a Internet (muy alta) Permite establecer conexiones a través de Internet. Este es posiblemente el permiso más importante, en el que más hay que fijarse a quién se le otorga. Muchas aplicaciones lo piden, pero no todas lo necesitan. Cualquier malware necesita una conexión para poder enviar datos de nuestro dispositivo.
  • ACCESS_WIFI_STATE Comunicación de red – ver estado de conexión, ver estado de Wi-Fi(baja) Información sobre redes WiFi disponibles.
  • WAKE_LOCK Herramientas del sistema – Impedir que el teléfono entre en modo de suspensión (baja) Algunas aplicaciones pueden necesitar de este permiso, y realmente a lo único que puede afectar es a nuestra batería.
  • CHANGE_CONFIGURATION Herramientas del sistema – Modificar la configuración global del sistema (moderada) Permite cambiar la configuración (como locale). Pese a que es importante en sí, es muy común, así por ejemplo los widgets lo necesitan.
  • READ_SYNC_SETTINGS Herramientas del sistema – leer ajustes de sincronización (baja) tan solo permite saber si tienes sincronización en segundo plano con alguna aplicación (como con un cliente de Twitter o Gmail).
  • WRITE_APN_SETTINGS Herramientas del sistema – Escribir configuración del Punto de Acceso (moderada) Permite la configuración del punto de acceso a la red. Por ejemplo, encender y a apagar tu conexión de red o Wi-Fi.
  • MANAGE_APP_TOKENS Herramientas del sistema – recuperar aplicaciones en ejecución(moderada) Permite saber qué aplicaciones están corriendo en segundo plano y cambiar el orden.
  • SET_PREFERRED_APPLICATIONS Herramientas del sistema – establecer aplicaciones preferidas(moderada) Permite la asignación a una aplicación para que haga determinada tarea. Por ejemplo, la reproducción de vídeos.
  • VIBRATE Controles de hardware – control de la vibración (baja) Permite hacer vibrar al teléfono. Los juegos lo suelen utilizar bastante.
  • CAMERA Controles de hardware – realizar fotografías (baja) Permite acceso al control de la cámara y a la toma de imágenes.
  • RECORD_AUDIO Controles de hardware – grabar audio (moderada) Permite grabar sonido desde el micrófono del teléfono.