Неверный столбец в контактах

1

Я планирую создать cursorjoiner для своего приложения. Я хотел бы присоединиться к отображаемому имени и идентификатору электронной почты, используя cursorjoiner. Я использую Android 1.6.

Когда я запрашиваю список адресов электронной почты, я получаю исключение как:

03-30 13:08:15.609: ERROR/AndroidRuntime(302): Caused by: java.lang.IllegalArgumentException: Invalid column person

Мой код ниже

String[] projection1 = new String[] {
People._ID,
People.DISPLAY_NAME
} ;

String[] projection2 = new String[] {
    Contacts.ContactMethods.PERSON_ID,
    Contacts.ContactMethods.DATA
} ;

Cursor cur = cr.query(People.CONTENT_URI, projection1, null, null, null);
Cursor emailCur = cr.query( Contacts.ContactMethods.CONTENT_EMAIL_URI, 
                                projection2, 
                                null, null, null); 

Я проверил документы, в которых говорится, что PERSON_ID является допустимой записью.

Кроме того, если я использую тот же столбец, что и параметр внутри запроса, он работает.

emailCur = cr.query( Contacts.ContactMethods.CONTENT_EMAIL_URI,
                     projection2, 
                     Contacts.ContactMethods.PERSON_ID + " = ?", 
                     new String[]{id}, null);

Может ли кто-нибудь сказать, какой параметр использовать в проецировании для достижения этого.

Теги:
contacts
android-1.6-donut

1 ответ

0
Лучший ответ

Contacts обесценивается, используйте ContactsContract вместо этого.

  • 0
    Я знаю, что это устарело начиная с 2.0. Я делаю для 1.6. Следовательно, он все еще активен. Пожалуйста, дайте мне знать любой другой способ сделать это. Спасибо

Ещё вопросы

Сообщество Overcoder
Наверх
Меню