2010-05-20 4 views
5

j'ai demandé « contenu // sms/» et je ne sais pas ce que certains champs signifient. Ils sont -Quelles sont les significations des valeurs dans le fournisseur de contenu Android "content // sms /"?

  1. ID de thread
  2. Protocole
  3. Statut
  4. Reply_Path_Present
  5. Service_Center

Je les ai vérifié dans LogCat et a trouvé les valeurs à celles-ci:

  • ID de thread: 1 à 6 etc ..
  • Protocole: null/0
  • Statut: -1
  • Reply_Path_Present: null/0
  • Service_Center: null

S'il vous plaît dites-moi ce que le les significations de ces valeurs sont.

Répondre

6

Vous pouvez utiliser Cursor.getColumnNames() pour récupérer les noms de colonnes de tout fournisseur de contenu, par exemple

ContentResolver contentResolver = getContentResolver(); 
Cursor cursor = contentResolver.query(
    Uri.parse("content://sms/inbox"), null, null, null, null); 

String[] columnNames = cursor.getColumnNames(); 

Pour content://sms/inbox cela donne _id, thread_id, adresse, personne, la date, le protocole, lire, état, type, reply_path_present, sujet, corps, service_center, verrouillé sur mon téléphone.

Vous pouvez également jeter un oeil à la SmsProvider mais il ne fait pas partie de l'API publique.

+0

Merci beaucoup, Josef. désolé pour ma faiblesse en anglais. Je veux dire à titre d'exemple, ce que cela signifie en valeur de statut «-1». Y a-t-il seulement 15 champs de contenu // sms? Cela dépend-il de la version Android? Où et comment pourrais-je apprendre le code open source comme votre lien partagé, SmsProvider? En fait, j'ai travaillé sous Android pendant 2 mois. Alors laissez-moi savoir plus. – soclose

+0

Le fournisseur de contenu SMS lui-même "ne fait pas partie de l'API publique". Si c'était le cas, vous verriez des classes dans le paquet 'android.provider'. Voir http://android-developers.blogspot.com/2010/05/be-careful-with-content-providers.html – CommonsWare

+0

Merci. laissez-moi savoir que les 5 champs ci-dessus sont utilisés pour quoi. – soclose

1

Le Fölling est le moyen de déterminer toutes les colonnes d'un curseur particulier a.

StringBuffer info = new StringBuffer(); 
for(int i = 0; i < Cursor.getColumnCount(); i++) { 
    info.append("Column: " + Cursor.getColumnName(i) + "\n"); 
} 

Imprimez cette page pour connaître toutes les colonnes du tableau.

Questions connexes