Il existe une autorisation Android mystérieuse et non documentée appelée: WRITE_GSERVICES . Comme d'habitude, la documentation de Google est encore plus mystérieuse que tout mauvais conte de fées, écrivant:
android.permission.WRITE_GSERVICES Allows an application to modify the Google service map.
Cependant googler (!) Ne Google Service Map
donne rien d'utile.
Que contrôle-t-elle et à quoi sert-elle?
stock-android
permissions
not2qubit
la source
la source
READ_GSERVICES
, ce qui est logique, car les applications normales ne peuvent pas demander l'accès àWRITE_GSERVICES
, le demandeur souligne que Google Maps nécessite l'autorisation READ_GSERVICES pour fonctionner correctement. - Je veux également ajouter que, sur les 17 modifications apportées au doublon que vous appelez «le mien», 14 ont été effectuées par d'autres utilisateurs que moi, contribuant à plus de 5000 caractères ajoutés.Réponses:
Notez que cette autorisation est presque complètement non documentée, c'est pourquoi nous devons chercher notre véritable sens. Il ne s'agit donc en aucun cas d'une "réponse faisant autorité" - mais plus ou moins de quelque chose entre une "bonne supposition" et une "déduction d'autres indications".
La description officielle de cette autorisation (comme dit, il n'y a pas de documentation supplémentaire) est:
Alors maintenant, nous pouvons deviner ce que cela est censé signifier. Faisons un peu de «rétro-ingénierie» pour que nous nous y sentions. Ryan a déjà donné quelques indications dans son commentaire, reliant à deux questions SO:
READ_GSERVICES
)Lecture entre les lignes: chaque fois qu'une application souhaite utiliser (des parties de) le cadre de services Google , elle doit déclarer l'
READ_GSERVICES
autorisation requise - ce qui est assez similaire à l'exigerGET_ACCOUNTS
si vous le souhaitezUSE_CREDENTIALS
: l'application doit d'abord s'assurer que le service requis est disponible du tout, avant d'y accéder.Cela nous donne une idée de ce que doit être Google Service Map : une sorte d'index pour les services Google disponibles (installés).
Maintenant que nous avons découvert cela, nous pouvons faire une bonne estimation de la
WRITE_GSERVICES
finalité de l' autorisation - et pourquoi elle est protégée par lesystem
niveau de protection (c'est-à-dire qu'elle n'est accordée qu'aux "applications système"), c'est-à-dire celles intégrées dans la ROM, qui est en cours d'installation sur la/system
partition): siREAD_GSERVICES
est destiné à déterminer quels services Google sont disponibles,WRITE_GSERVICES
doit être son homologue pour mettre à jour cette carte de service. Par exemple, chaque fois qu'un nouveau service est installé (ou supprimé), pour mettre à jour "l'index des services Google disponibles sur l'appareil" - le "Google Service Map".Une seule chose que je me demande dans ce contexte, c'est pourquoi cette permission appartient au
ACCOUNTS
groupe …Voir également:
READ_GSERVICES
autorisation comme "Autorise l'API à accéder aux services Web de Google " (en citant un message de la[email protected]
liste de diffusion)ACCOUNTS
groupe, car elle inclut par exemple l' authentification de compte Google ;)la source
ACCOUNTS
groupe: de nombreux services Google nécessitent une connexion pour être utilisables, il peut donc y avoir des recoupements (par exemple, en transmettant le nom de votre compte pour vérifier si vous avez un "utilisateur actif" pour un compte donné). service, même sans vous connecter / transmettre un mot de passe / jeton AUTH).