2012-03-22 10 views
5

संदेश ऐप की तरह, पहली गतिविधि व्यक्ति द्वारा गिनती सबसे आखिरी एसएमएस और गिनती संख्या प्रदर्शित करती है।संपर्क द्वारा नवीनतम एसएमएस संदेश समूह से पूछें

उदाहरण मैं क्रिस, अलाइन के साथ 60, रे के साथ 40 ... के साथ 50 ग्रंथों आदान प्रदान किया था इस

Chris (50) Hey how are you lately ?  
Aline (60) Let's catch up  
Ray (40) Here is my number 
Ethan (1) I wrote a solution 

मैं भी ऐसा ही करने की कोशिश कर रहा हूँ की तरह कुछ एप्लिकेशन प्रदर्शित करता है। मैं सभी एसएमएस पूछता हूं तो मैं उन्हें सॉर्ट करता हूं। कम से कम यह ओ (एन) कुशल है।

Cursor cur = this.getContentResolver().query(Uri.parse("content://sms"), null, null, null, null); 
int count = cur.getCount(); 

// iterate all the SMS 
for (int i=1 ; i<=count ; i++){ 
    // processing 
    .... 

    cur.moveToNext(); 
} 

वहाँ क्वेरी के लिए एक रास्ता (प्राप्त या कोई मसौदा प्रकार भेजा) नवीनतम संदेश व्यक्ति के आधार पर वर्गीकृत और एक व्यक्ति से एसएमएस की संख्या प्राप्त है? मुझे लगता है कि कई प्रश्न हैं।

उत्तर

9

मुझे लगता है कि यह तुम क्या चाहते हो जाएगा:

Cursor cur = this.getContentResolver().query(Uri.parse("content://mms-sms/conversations?simple=true"), null, null, null, "normalized_date desc"); 

लौटे कर्सर हर बातचीत में नवीनतम संदेश और प्रत्येक बातचीत के संदेश की राशि शामिल होंगे।

+0

यह काम करता है !! संदेशों की संख्या कॉलम "message_count" है। "Android.permission.READ_SMS" को न भूलें। आपको यह सरल कोड स्निपेट कहां मिला? –

+0

मुझे अपने स्वयं के एसएमएस पार्सिंग करते समय एक ही समस्या में ठोकर लगाना याद है। एक त्वरित googling किया और वास्तव में कुछ स्रोतों को मिला। खुशी है कि यह काम किया। – gelupa

+0

आपकी मदद के लिए ठीक है धन्यवाद। मैं googled नहीं किया कीवर्ड "बातचीत" :) –

संबंधित मुद्दे