the sms and mms tables have different columns, the correct way is to fetch each on its own, that is
Cursor smsCur = cr.query(Uri.parse("content://sms/"), null, "thread_id=" + threadId, null, null);
Cursor mmsCur = cr.query(Uri.parse("content://mms/"), null, "thread_id=" + threadId, null, null);