0

重複の可能性:
Android で SMS ストレージにアクセスするには?

Android のすべてのメッセージにアクセスしようとしています。コードはありますが、このコードを介して最後のメッセージにのみアクセスしました。どのようにすべてを読むことができますか?

public void onReceive(Context context, Intent intent) 
{
    //---get the SMS message passed in---
    Bundle bundle = intent.getExtras();        
    SmsMessage[] msgs = null;           
    if (bundle != null)
    {
        String header = "";
        String body = "";

        //---retrieve the SMS message received---
        Object[] pdus = (Object[]) bundle.get("pdus");
        msgs = new SmsMessage[pdus.length];            
        for (int i=0; i<msgs.length; i++)
        {
            msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);                
            header = msgs[i].getOriginatingAddress();                     
            body = msgs[i].getMessageBody().toString();       
        }
        //---display the new SMS message---
        Toast.makeText(context,"Mesaj geldi", Toast.LENGTH_SHORT).show();
        Header.add(header);
        Body.add(body);  
    }
4

1 に答える 1

0
Uri allMessage = Uri.parse("content://sms/");
ContentResolver cr = getContentResolver();
Cursor c = cr.query(allMessage, null, null, null, null);
while  (c.moveToNext()) {
   String row = c.getString(1);
}

Android のすべてのメッセージにアクセスできます。ここですべての受信ボックス/送信ボックスを取得できますが、テストしていません。

于 2012-10-17T09:43:10.210 に答える