J'ai lu des informations sur l'API du fournisseur de contacts, mais je ne vois pas très bien comment les interactions entre les applications sont réglementées. Si une application stocke des contacts dans un compte spécifique à cette application, toute autre application autorisée à accéder aux contacts peut-elle encore lire les informations de ces contacts (c'est-à-dire de l'autre application) ? Ou bien chaque application n'a-t-elle accès qu'à ses propres comptes et à tous les contacts saisis manuellement via l'application Contacts (par défaut) ?
Réponses
Trop de publicités?Oui, toutes les données stockées dans Contacts Provider sont visibles pour toutes les applications avec READ_CONTACTS
et si l'utilisateur a donné l'autorisation. D'après la documentation officielle de Développeurs Android - Récupérer une liste de contacts ,
Demander la permission de lire le fournisseur
Pour effectuer tout type de recherche dans le fournisseur de contacts, votre application doit avoir
READ_CONTACTS
permission. [...]
C'est pourquoi les applications de contacts peuvent généralement afficher plusieurs types de comptes pour une même personne (par exemple Google, WhatsApp, Microsoft), et aussi pourquoi les applications de messagerie sociale (par exemple WhatsApp) et les applications de médias sociaux (par exemple Facebook, Twitter, Instagram) peuvent détecter les comptes enregistrés en fonction des numéros de téléphone et/ou des courriels stockés dans le fournisseur de contacts.
Chaque fois que vous commencez à utiliser une application, celle-ci vous demande des autorisations pour effectuer les tâches qu'elle est censée accomplir, comme l'accès à l'appareil photo, aux contacts, etc. Ces autorisations sont spécifiques à chaque application. Vous pouvez afficher les autorisations en vous rendant dans la section configuration -> confidentialité -> gérer les permissions .
Si vous le souhaitez, vous pouvez révoquer les autorisations de toute application dont vous pensez qu'elle ne devrait pas avoir cette autorisation spécifique - cela n'endommagera pas l'application elle-même, et lorsque l'application aura à nouveau besoin de cet accès, elle vous le demandera.