¿Por qué los sistemas operativos móviles no implementan una forma de denegar permisos a una aplicación?

4

Android y iOS (afaik) implementan un esquema de permisos relativamente fino para sus aplicaciones.

Pero como usuario, solo tengo el cambio de aceptar todo o nada.

Cuando lo pienso, no debería ser un gran problema para el sistema operativo implementar una función para denegar ciertos permisos para una aplicación sin romperlos.

Algunos ejemplos:

  • acceso internacional: todas las aplicaciones móviles tienen que hacer frente al acceso a Internet que no está disponible
  • acceso a contactos: el sistema operativo podría mentir a la aplicación y darle una libreta de direcciones vacía
  • acceso gps: nuevamente, el sistema operativo podría mentir y dar a la aplicación las coordenadas del polo norte (por ejemplo) :-)

¿Alguien sabe por qué esto no se implementa directamente en el sistema operativo?

    
pregunta rdmueller 14.03.2015 - 14:22
fuente

1 respuesta

3

En primer lugar, en iOS puede negar el acceso a ciertos recursos (cuando la aplicación lo solicita por primera vez, recibe una ventana emergente que puede aceptar o rechazar) y, por lo tanto, las aplicaciones están diseñadas para manejar el escenario de acceso rechazado. También puede deshabilitar el acceso a Internet en una aplicación por aplicación, aunque no se le pregunte de forma explícita antes de tiempo. Sin embargo, en general, hay un rango de permisos significativamente menor.

En relación con Android, puedo pensar en algunas razones:

  • Un error de permiso lanza una excepción que un desarrollador no necesariamente puede detectar. La mayoría de las aplicaciones de Android normalmente no se desarrollan con el supuesto de que los permisos se otorgarán de forma selectiva.
  • Si muchas aplicaciones se bloquean o funcionan de manera poco confiable sin previo aviso, se reflejará mal en Android a los ojos de los usuarios promedio que no entienden el aspecto técnico.
  • Bloquear Internet sería una excelente función de bloqueo de anuncios. Si una aplicación compatible con anuncios, como una calculadora, no requiere que Internet realice su función principal, los usuarios podrían deshabilitar fácilmente Internet y bloquear anuncios. Me imagino que esto es particularmente insostenible a los ojos de Google.
  • Crearía una carga de soporte importante para los desarrolladores para mantener una lista de permisos que son "realmente" necesarios para ciertas funciones. Los usuarios podían pensar fácilmente que una aplicación tenía errores, pero en realidad acababan de eliminar un permiso requerido. Para los desarrolladores que tienen que crear indicaciones que indiquen al usuario que se requieren permisos adicionales, se crearía una complejidad adicional en cada punto donde se requieran permisos.
  • Los desarrolladores de aplicaciones ya deberían estar aplicando el principio de privilegio mínimo. Si una aplicación está tratando de acceder a cosas que obviamente no necesita, es una buena señal de que debe sospechar.
  • El 83% de los usuarios de Android no presta atención a los permisos como ellos son

Las cosas podrían ser diferentes si:

  1. Se les dijo a los desarrolladores de Android desde el principio que asumieran que algunos permisos podrían no ser otorgados
  2. Android proporcionó un mensaje incorporado que permite a los usuarios habilitar un permiso requerido antes de lanzar una excepción
  3. Y había una manera de tratar a los anuncios de manera diferente a otro tráfico de Internet

Obviamente, si eres un usuario avanzado, entonces App Ops podría ser una opción para ti.

    
respondido por el thexacre 15.03.2015 - 00:57
fuente

Lea otras preguntas en las etiquetas