Google Play Services (com.google.android.gms
) est une application qui fonctionne en collaboration avec un certain nombre d'autres applications closed-source pour fournir les Services Mobiles Google (GMS) aux utilisateurs Android. Pour en citer quelques-uns, il y a Google Ads, Firebase Analytics, l'authentification (de la connexion au compte Google, la sauvegarde des identifiants des autres applications, via SMS), les appareils Google Cast, Game Manager, Drive, Cloud Messaging (notifications push), Google Fit, Location Provider, Maps, Instant Apps, les appareils à proximité, les prédictions de recherche, Google+, SafetyNet, Tâches, Wallet, etc. Des détails supplémentaires peuvent être trouvés ici et ici. Play Store (com.android.vending
) fournit des API/services supplémentaires comme les achats intégrés, la licence d'application et Play Protect.
D'après votre commentaire :
Est-ce seulement des API pour l'intégration d'applications, ou y a-t-il aussi du code propriétaire interne de Google pour l'analyse, le suivi de l'utilisation, les statistiques, etc. ?
Les développeurs peuvent mieux expliquer, mais à ma connaissance, tout est propriétaire sauf les interférences API. Les propres applications propriétaires de Google telles que YouTube, Chrome, Gmail, Maps, Gboard, Messages, etc., dépendent de ces API/services et refusent généralement de fonctionner sans GMS sur l'appareil. En plus de celles-ci, les OEM sont contraints par des contrats de livrer leurs appareils avec Play Services pré-installés en tant que applications système. Les développeurs d'applications trouvent plus pratique de construire leurs applications avec les API de Google. En fait, de nombreuses fonctionnalités de l'AOSP deviennent dépendantes des produits propriétaires de Google de manière imperceptible. Citons ici :
La restriction de Doze sur l'accès au réseau risque également d'affecter votre application, surtout si l'application dépend de messages en temps réel comme des alertes ou des notifications. Si votre application nécessite une connexion persistante au réseau pour recevoir des messages, vous devriez utiliser Firebase Cloud Messaging (FCM) si possible.
...
FCM est optimisé pour fonctionner avec Doze et les modes de veille des applications en utilisant des messages FCM à haute priorité.
Si vous avez GMS installé sur votre appareil, dumpsys activity services
montrera généralement plus d'une douzaine de services Google en arrière-plan tels que MeasurementBrokerService, PersistentBoundBrokerService, ContextManagerService et GcmService, etc.
Aussi, comment la fonctionnalité est-elle répartie entre Google Play Services et le Cadre des Services Google ?
Il y a un certain nombre d'applications qui fonctionnent en arrière-plan avec Play Services comme Services Library, Shared Library, Carrier Setup, Market Feedback Agent, Backup Transport, Config Updater, Contacts Sync, Partner Setup, etc. Une liste plus exhaustive peut être trouvée ici. Google Services Framework (com.google.android.gsf
) est également l'une de ces applications (partageant l'UID avec com.google.android.gms
) qui concerne principalement Cloud Messaging (FCM) mais il n'y a pas de ligne claire (du moins officiellement parlé) entre la fonctionnalité des différents composants de la suite GMS.
LECTURE SUPPLÉMENTAIRE :
2 votes
Et notre wiki de tag google-play-service. Toujours vérifier ces wikis de tag en premier, votre réponse pourrait déjà s'y trouver :)