0

これから Android で SMS を読み取ることができます:-

        phonesms = new ArrayList<String>();    
        ContentResolver cr = getContentResolver();                                                                  
    Uri uriSMSURI = Uri.parse("content://sms/inbox");
Cursor cur = getContentResolver().query(uriSMSURI, null, null, null,null);
    startManagingCursor(cur);
    if (cur.moveToFirst()) {
        for (int i = 0; i < cur.getCount(); i++) {
            try {
 String smsbody = cur.getString(cur.getColumnIndexOrThrow("body")).toString();
 phonesms.add(smsbody);

            } catch (Exception e) {

            }

今の問題は、未読のSMSにアクセスし、一定期間内に未読のSMSを電子メールで自動的に送信したいということです。

私は2つの方法から電子メールでSMSを送信できます:- 1. インテントを介して 2.Java Mail Api

しかし、一定時間内に未読のSMSを電子メールで自動的に送信する方法。

4

2 に答える 2

1

未読の SMS を取得するには:

Cursor cur = getContentResolver().query(uriSMSURI, null, "read = 0", null, null);
于 2012-10-18T14:05:31.160 に答える
0

cur.getString(cur.getColumnIndexOrThrow("status") を使用して、既読かどうかを判断できます。または、それらをクエリ自体に含めて、未読のメッセージのみを除外することもできます。

  while (cur.moveToNext()) {
               String address = cur.getString(cur.getColumnIndex("address"));
               String body = cur.getString(cur.getColumnIndexOrThrow("body"));
        int status = cur.getString(cur.getColumnIndexOrThrow("status"));
        if(status == SmsManager.STATUS_ON_ICC_UNREAD ) {
        //do whatever you want
        }

          }
于 2012-10-18T14:18:11.910 に答える