您好我正在尝试获取什么是应用程序联系人个人资料图片。可能吗?他们在哪里存储用户的所有个人资料图片?谢谢!
问问题
3521 次
2 回答
8
What's App 不提供任何 API 来访问他们的个人资料图片。
于 2013-05-31T17:28:19.347 回答
2
确实没有 WhatsApp API 可以解决这个问题,但这当然是可能的。
您可以通过 AndroidContactsContract
类查找联系人图像。
android 数据库中有两种类型的联系人 -RawContact
和Contact
. 后者是一组前者(代表个人账户)的集合(代表一个人)。
我建议您首先确保照片已缓存在设备上(只是为了避免在测试时出现错误标志 - 在 WhatsApp 中打开联系人完整图像,您可以确保它已被缓存)然后您以编程方式获取它(来自 API 14):
ContentResolver cr = getContentResolver();
Cursor contactCursor = cr.query(
ContactsContract.RawContacts.CONTENT_URI,
new String[] { ContactsContract.RawContacts._ID, ContactsContract.RawContacts.CONTACT_ID } ,
ContactsContract.RawContacts.ACCOUNT_TYPE + "= ?",
new String[] { "com.whatsapp" }, null);
if (contactCursor != null && contactCursor .moveToFirst()) {
String whatsappContactId = contactCursor.getString(contactCursor.getColumnIndex(ContactsContract.RawContacts.CONTACT_ID));
Uri photoId = ContentUris.withAppendedId(RawContacts.CONTENT_URI, whatsappContactId);
Uri photoUri = Uri.withAppendedPath(photoId, RawContacts.DisplayPhoto.CONTENT_DIRECTORY);
}
于 2017-03-17T12:23:57.383 回答