¿Qué hace el permiso de Android "WRITE_GSERVICES"?

Hay un permiso de Android misterioso e indocumentado llamado: WRITE_GSERVICES . Como de costumbre, la propia documentación de Google es incluso más misteriosa que cualquier cuento de hadas malo, escribiendo:

android.permission.WRITE_GSERVICES      Allows an application to modify the Google service map.

Sin embargo, buscar en Google (!) Google Service Mapno arroja nada útil.

¿Qué controla y para qué sirve?

@Ryan: si realmente se ha molestado en mirar el enlace que dice que está duplicado, verá que ese no es el caso. ¿Y dónde ves que tiene que ver con los datos del mapa? Las fuentes parecen contar otra historia.
Bueno, simplemente no lo es y no lo veo siquiera tratando de respaldar su declaración con ningún código, prueba o enlace relevante, que no sea el suyo. Por favor, muéstrame el código que muestra que está conectado incluso de forma remota a Google Maps. Como dije, mi propia investigación muestra algo más.
Si bien this (And this ) es para READ_GSERVICES, lo que tiene sentido, ya que las aplicaciones normales no pueden solicitar acceso a WRITE_GSERVICES, el autor de la pregunta señala que Google Maps requiere el permiso READ_GSERVICES para funcionar correctamente. - También quiero agregar, de las 17 ediciones al duplicado que llamas 'mío', 14 de ellas fueron de otros usuarios además de mí, lo que contribuye a agregar más de 5000 caracteres.
Sí, y gracias. Ese primer enlace parece muy relevante y confirma que tiene algo que ver con alguno o todos los cerca de cien Servicios diferentes que Google puede proporcionar a AOS. Todo, desde facturación y anuncios hasta Play y servicios en la nube. El problema aquí (que esperaba resolver) era obtener un ejemplo más específico de dónde y cómo Google usa este permiso, ya que es muy intrusivo y fácilmente podría representar una amenaza para la seguridad.
Consulte: android.izzysoft.de/applists/perms#WRITE_GSERVICES :) "Permite que una aplicación modifique el mapa de servicios de Google". Entonces @RyanConrad Es el mapa del servicio , no el "Servicio de Google Maps". Lo que significa exactamente esto es otra cosa, ya que, que yo sepa, no existe documentación real.
Voto para reabrir esta pregunta. Para el razonamiento, consulte (y únase a la discusión sobre) Meta: ¿Deberíamos realmente cerrar las preguntas sobre los significados de los permisos como duplicados de la "lista general"?
Solo quiero agregar esta imagen de algunos de los servicios, paquetes que ofrece Google. (Esto fue tomado de una lista de complementos ROM GAPPS).

Respuestas (1)

Tenga en cuenta que este permiso está casi completamente sin documentar, por lo tanto, debemos sentir nuestro camino hacia su significado real. Entonces, esta no es de ninguna manera una "respuesta autorizada", sino más o menos algo entre una "buena conjetura" y una "deducción de otros indicadores".

La descripción oficial de este permiso (como se dijo, no hay más documentación) es:

Permite que una aplicación modifique el mapa de servicios de Google.

Así que ahora podemos adivinar lo que se supone que significa. Hagamos un poco de "ingeniería inversa" para que eso nos acerque. Ryan ya dio algunos consejos en su comentario, vinculándose a dos preguntas SO:

Leyendo entre líneas: cada vez que una aplicación quiera usar (partes de) el marco de servicios de Google , debe declarar el READ_GSERVICESpermiso requerido, que es bastante similar a requerir GET_ACCOUNTSsi lo desea USE_CREDENTIALS: la aplicación primero debe asegurarse de que el servicio requerido esté disponible en absoluto, antes de acceder a él.

Esto nos da una idea de lo que debe ser el mapa de servicios de Google : una especie de índice de los servicios de Google disponibles (instalados).

Ahora que descubrimos eso, podemos adivinar para qué WRITE_GSERVICESpodría estar destinado el permiso, y por qué está protegido por el systemnivel de protección (es decir, solo se otorga a las "aplicaciones del sistema", es decir, aquellas integradas en la ROM, que es está instalado en la /systempartición): Si READ_GSERVICESse pretende averiguar qué servicios de Google están disponibles, WRITE_GSERVICESdebe ser su contraparte para actualizar ese mapa de servicios. Que es, por ejemplo, cada vez que se instaló (o eliminó) un nuevo servicio, para actualizar el "índice de servicios de Google disponibles en el dispositivo": el "Mapa de servicios de Google".

Solo una cosa que me pregunto en este contexto es por qué este permiso pertenece al ACCOUNTSgrupo ...


Ver también:

Otro punto por el que este permiso podría estar en el ACCOUNTSgrupo: muchos servicios de Google requieren un inicio de sesión para poder utilizarlos, por lo que puede haber alguna verificación cruzada (por ejemplo, transmitir el nombre de su cuenta para verificar si tiene un "usuario activo" para un determinado servicio, incluso sin iniciar sesión/transmitir una contraseña/token de AUTH).