Bu çok yardımcı oldu, burada arayanın ismi, id almak için benim son kod ve Fotoğraf:
private void uploadContactPhoto(Context context, String number) {
Log.v("ffnet", "Started uploadcontactphoto...");
String name = null;
String contactId = null;
InputStream input = null;
// define the columns I want the query to return
String[] projection = new String[] {
ContactsContract.PhoneLookup.DISPLAY_NAME,
ContactsContract.PhoneLookup._ID};
// encode the phone number and build the filter URI
Uri contactUri = Uri.withAppendedPath(ContactsContract.PhoneLookup.CONTENT_FILTER_URI, Uri.encode(number));
// query time
Cursor cursor = context.getContentResolver().query(contactUri, projection, null, null, null);
if (cursor.moveToFirst()) {
// Get values from contacts database:
contactId = cursor.getString(cursor.getColumnIndex(ContactsContract.PhoneLookup._ID));
name = cursor.getString(cursor.getColumnIndex(ContactsContract.PhoneLookup.DISPLAY_NAME));
// Get photo of contactId as input stream:
Uri uri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, Long.parseLong(contactId));
input = ContactsContract.Contacts.openContactPhotoInputStream(context.getContentResolver(), uri);
Log.v("ffnet", "Started uploadcontactphoto: Contact Found @ " + number);
Log.v("ffnet", "Started uploadcontactphoto: Contact name = " + name);
Log.v("ffnet", "Started uploadcontactphoto: Contact id = " + contactId);
} else {
Log.v("ffnet", "Started uploadcontactphoto: Contact Not Found @ " + number);
return; // contact not found
}
// Only continue if we found a valid contact photo:
if (input == null) {
Log.v("ffnet", "Started uploadcontactphoto: No photo found, id = " + contactId + " name = " + name);
return; // no photo
} else {
this.type = contactId;
Log.v("ffnet", "Started uploadcontactphoto: Photo found, id = " + contactId + " name = " + name);
}
... o zaman sadece "input" (bir InputStream olarak fotoğraf) ile istediğiniz şeyi yapın ben "ve" contactId ".
Ve burada sadece yukarı yukarıdaki kod başlangıcında yakın projeksiyon ekleyebilir erişime sahip olduğunuz ~ 15 ya da öylesine sütunları listeleme dokümanlar şunlardır: Bu rağmen http://developer.android.com/reference/android/provider/ContactsContract.PhoneLookup.html
olsun diğerleri, iyi bir açıklama ile isim, fotoğraf, iletişim kimliği, vb sorgulamak için tüm kodu içeren bir yazı yazdım. Kod, farklı yanıtlarda bulunan, daha organize ve test edilmiş snippet'leri içerir. Link: http://hellafun.weebly.com/home/get-information-of-a-contact-from-number – Usman