我使用以下内容从收件箱中获取短信
ContentResolver cr = getContentResolver();
Cursor cur = cr.query(Uri.parse("content://sms"), null,null,null, null);
DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
cursor_count=cur.getCount();
if(cur.moveToFirst())
{
do {
sender.add(cur.getString(2));
msg.add(cur.getString(11));
date.add(formatter.format(Long.parseLong(cur.getString(4))));
} while (cur.moveToNext());
我从地址栏中获取此人的地址,但如果存储在我的联系人中,我还想获取发件人的联系人姓名。
person字段始终返回null,为什么?
答案 0 :(得分:6)
试试这段代码
String contact=address;
Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(address));
Cursor cs= context.getContentResolver().query(uri, new String[]{PhoneLookup.DISPLAY_NAME},PhoneLookup.NUMBER+"='"+address+"'",null,null);
if(cs.getCount()>0)
{
cs.moveToFirst();
contact=cs.getString(cs.getColumnIndex(PhoneLookup.DISPLAY_NAME));
}