0

SMSが私に送信されたとき。BroatcastReceiver の onReceive で、メソッド readNewSMS() を呼び出します。

private MySMS readNewSMS(String phoneNumber) {
    MySMS sms = new MySMS();

    Uri uri = Uri.parse("content://sms/inbox");
    Cursor cursor = getSherlockActivity().managedQuery(uri, null,
            null, null, null);
    cursor.moveToFirst();

        sms.setNumber(cursor.getString(
                cursor.getColumnIndexOrThrow("address")).toString());
        sms.setId(cursor.getString(
                cursor.getColumnIndexOrThrow("_id")).toString());
        sms.setThread_id(cursor.getString(cursor
                .getColumnIndexOrThrow("thread_id")));
        sms.setBody(cursor.getString(
                cursor.getColumnIndexOrThrow("body")).toString());
        sms.setTime(cursor.getString(
                cursor.getColumnIndexOrThrow("date")).toString());
        sms.setType(cursor.getString(
                cursor.getColumnIndexOrThrow("type")).toString());

    return sms;
}

ただし、新しい SMS ではなく、新しい SMS の以前の SMS を返します。このエラーを修正するにはどうすればよいですか?

4

1 に答える 1