L’application Messaging possède donc un content provider qui lui permet d’accéder à sa liste de SMS. Pour accéder à tous les content providers, il faut connaître l’URI (Sorte d’URL unique pour accéder au contenu) du content provider. Par exemple pour accéder aux contacts du téléphone, il faut utiliser l’URI : “content://contacts/people/”

Pour accéder à la liste des SMS de l’application Messaging, il suffit donc d’utiliser l’URI : “content://sms/”, on peut aussi accéder seulement aux SMS envoyés (“content://sms/sent”), en brouillon (“content://sms/draft”), etc …

Attention, l’accès au provider SMS demande une permission à ajouter à la liste des permissions dans le AndroidManifest.xml :

<uses-permission android:name="android.permission.READ_SMS"/>

Voici maintenant un code source simple pour vous montrer comment utiliser cette astuce :

image

Et voici le résultat :

image

Vous pouvez télécharger l’application de test ici