Возник вопрос, насчет работы с смс

.
Есть класc :
Код: Выделить всё
[syntax=java]
public class ContactEntity {
private int contactId;
private int phoneLookupID; // Used to get available phone numbers
private String contactName;
private String contactPrimaryPhone;
}
[/syntax]
Геттеры и сеттеры убрал, чтоб не захламлять

,
В общем contactId в нем это
ContactsContract.Contacts._ID,
PhoneLookupID это
ContactsContract.CommonDataKinds.Phone.CONTACT_ID,
сontactName это
ContactsContract.Contacts.DISPLAY_NAME
и contactPrimaryPhone отсюда
ContactsContract.CommonDataKinds.Phone.CONTENT_URI.
Хочу получить историю смсок, для этого класса.
Я слегка запутался как правильно искать и вообще правильно ли я это делаю.
Пытался получить историю таким методом :
Код: Выделить всё
[syntax=java]
private void SMSNumber(String phoneNumber) {
Log.d(LOG_TAG, "IN SMSNumber");
Uri mSmsinboxQueryUri = Uri.parse("content://sms/inbox");
Cursor cursor1 = getContentResolver().query(
mSmsinboxQueryUri,
new String[] { "_id", "thread_id", "address", "person", "date",
"body", "type" }, null, null, null);
String[] columns = new String[] { "address", "person", "date", "body",
"type" };
if (cursor1.getCount() > 0) {
String count = Integer.toString(cursor1.getCount());
while (cursor1.moveToNext()) {
if (address.equalsIgnoreCase(phoneNumber)) { // put your number
// here
String name = cursor1.getString(cursor1
.getColumnIndex(columns[1]));
String date = cursor1.getString(cursor1
.getColumnIndex(columns[2]));
String body = cursor1.getString(cursor1
.getColumnIndex(columns[3]));
String type = cursor1.getString(cursor1
.getColumnIndex(columns[4]));
Log.d(LOG_TAG, "date= " + date);
Log.d(LOG_TAG, "name= " + name);
Log.d(LOG_TAG, "body= " + body);
Log.d(LOG_TAG, "type= " + type);
}
}
}
cursor1.close();
}
[/syntax]
Но, я вижу только inbox, а мне надо получить весь диалог и входящие и исходящие от меня.
Куда копать дальше?
Помогите пожалуйста разобраться, как работать с смс и контактами.
Спасибо

.