Obtenir une liste de Fournisseurs de Contenu
Est-il un moyen de faire la liste de tous disponibles les fournisseurs de contenu sur un appareil? Pas de réel de cas d'utilisation, j'ai juste pensé qu'il pourrait être intéressant de voir ce que les applications que j'ai installé sur mon téléphone qui ont exposé les fournisseurs de contenu.
- Vous pouvez exécuter
adb bugreport
à partir de la ligne de commande qui va déverser une tonne d'info sur le périphérique actif, y compris une foule de renseignements sur chaque paquet et tout ce qu'ils offrent: des activités, des services, des fournisseurs de contenu... - double possible de Android fournisseur de Contenu de la liste
Vous devez vous connecter pour publier un commentaire.
Il devrait être possible en appelant PackageManager.getInstalledPackages() avec
GET_PROVIDERS
.MODIFIER: exemple:
À partir de la ligne de commande, exécutez:
adb shell dumpsys | grep Provider{
Note l'accolade d'ouverture. Cela vous donnera une courte liste de tous les fournisseurs installés par le biais de différents paquets.
J'ai utilisé la commande adb shell de commande comme ceci
$ adb shell dumpsys > dumpsys.txt
et de recherche pour les fournisseurs de contenu de la chaîne dans le fichier de sortie. À partir de ce que je peux voir la liste des fournisseurs de contenu dans l'appareil/l'émulateur.les listes de tous les fournisseurs de contenu disponible pour vous sur cet appareil.
Ou, si vous connaissez le nom du processus et l'UID du fournisseur, vous pouvez réduire la liste en spécifiant ces deux paramètres. J'ai utilisé cette avant de vérifier l'existence de mon propre fournisseurs de contenu, plus précisément ceux de la précédente (gratuits ou payants) installations:
Note le
android.os.Process.myUid()
pour obtenir mon propre processus de l'ID d'utilisateur.