2013-04-26 3 views
1

У меня возникли проблемы с поставщиком контактов. У меня есть псевдоним, который хранится в строковой переменной text. Я хочу получить имя и фамилию пользователя, у которых есть прозвище. Но что-то не так с моим кодом:Получите имя контакта по нику в Android

String _string = "no name"; 
Cursor cursor = getContentResolver().query(
    ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, 
    ContactsContract.CommonDataKinds.Nickname.NAME + " = " + text, new String[]{ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME}, null); 
int nameIndex = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME); 
if (cursor.moveToFirst()) { 
    _string = cursor.getString(nameIndex); 
} 

У меня есть ошибка «привязка или индекс столбца вне диапазона».

ответ

0
Cursor cursor = getContentResolver().query(ContactsContract.Data.CONTENT_URI, 
         new String[]{ContactsContract.Data.DISPLAY_NAME}, 
         ContactsContract.CommonDataKinds.Nickname.DATA1 + "=?", 
         new String[] { text }, 
         null); 

if (cursor.moveToFirst()) String nameOfContact = cursor.getString(0); 

Этот код будет возвращаться к вам имя контакторов с ником Wich stroed в тексте строки.

Смежные вопросы