Как получить имя контакта и номер телефона в Android

Я пытаюсь получить список контактов с его именем и номерами телефонов. Я пробую следующий код:

 // Get a cursor over every contact.
    Cursor cursor = getContentResolver().query(People.CONTENT_URI, 
                                               null, null, null, null); 
    // Let the activity manage the cursor lifecycle.
    startManagingCursor(cursor);
    // Use the convenience properties to get the index of the columns
    int nameIdx = cursor.getColumnIndexOrThrow(People.NAME); 

    int phoneIdx = cursor. getColumnIndexOrThrow(People.NUMBER);
    String[] result = new String[cursor.getCount()];
    if (cursor.moveToFirst())
      do { 
        // Extract the name.
        String name = cursor.getString(nameIdx);
        // Extract the phone number.
        String phone = cursor.getString(phoneIdx);
        result[cursor.getPosition()] = name + "-" +" "+  phone;
      } while(cursor.moveToNext());

Этот код должен возвращать массив с именами всех контактов и их номером телефона, но он возвращает только имя контакта и возвращает NULL в номере телефона,

Пример вывода:

 John - null
9
задан Cœur 10 October 2017 в 17:20
поделиться