get Kontaktinformationen von Android Contact Picker

Ich versuche, den Kontaktwähler anzurufen, den Namen, das Telefon und die E-Mail-Adresse der Person in Strings zu schreiben und sie mit Absicht an eine andere Aktivität zu senden. Soweit funktioniert das:

Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);  
startActivityForResult(intent, 1);  

// ...

@Override  
public void onActivityResult(int reqCode, int resultCode, Intent data) {  
    super.onActivityResult(reqCode, resultCode, data);  
    if (resultCode == Activity.RESULT_OK) {  
        Uri contactData = data.getData();  
        Cursor c =  managedQuery(contactData, null, null, null, null);  
        if (c.moveToFirst()) {  
            String name = c.getString(c.getColumnIndexOrThrow(ContactsContract.Contacts.DISPLAY_NAME));  
            Intent intent = new Intent(CurrentActivity.this, NewActivity.class);  
            intent.putExtra("name", name);  
            startActivityForResult(intent, 0);  
        }  
    }  
}

Aber wenn ich hinzufüge:

String number = c.getString(c.getColumnIndexOrThrow(ContactsContract.CommonDataKinds.Phone.NUMBER)); 

it Kraft schließt

Vielleicht gibt es einen anderen Weg, um ihre Nummer zu bekommen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage