Возможно ли получить доступ к имени из папки «Входящие» в Android?

Я разрабатываю приложение, в котором я получаю доступ к сообщению от тела, номеру мобильного телефона по адресу, идентификатору сообщения, человеку — дает значение int (я не знаю, что такое человек) из этого кода: - ---

 Uri uriSMSURI = Uri.parse("content://sms/inbox");
 Cursor cur = getContentResolver().query(uriSMSURI , null, "read=0",
                null, null);

Он работает нормально: --- теперь проблема заключается в том, что если какой-либо номер мобильного телефона сохранен в моем списке контактов мобильного телефона, я хочу показать имя в моем ListView, иначе я хочу показать мобильный number к которому я получаю доступ из канала address. Как я получу имя из папки «Входящие» Uri? Любая помощь будет оценена по достоинству.

Спасибо и с уважением, Deepanker


person Deepanker Chaudhary    schedule 23.11.2012    source источник


Ответы (1)


надо попробовать этот код

public String findNameByAddress(Context ct,String addr)
        {
             Uri myPerson = Uri.withAppendedPath(ContactsContract.CommonDataKinds.Phone.CONTENT_FILTER_URI,
                        Uri.encode(addr));

             String[] projection = new String[] { ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME };

                Cursor cursor = ct.getContentResolver().query(myPerson,
                        projection, null, null, null);

                if (cursor.moveToFirst()) {



                    String name=cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));


                    Log.e("","Found contact name");

                    cursor.close();

                    return name;
                }

                cursor.close();
                Log.e("","Not Found contact name");

                return addr;
        }

и

person Jatin Patel    schedule 23.11.2012
comment
Uri uriSMSURI = Uri.parse(content://sms/inbox); используя этот запрос и вышезапрос, также проблема в сравнении, если messageAddress == Phone.DISPLAY_NAME показывает отображаемое имя, в противном случае мобильный адрес для этого я беру два для цикла, поэтому приложение загружено, я хочу получить доступ из почтового ящика uri, если это возможно - person Deepanker Chaudhary; 23.11.2012