将联系人照片复制到我的文件夹
Copy contact photo to my folder
我得到联系人照片 URI
Uri uri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, Long.valueOf(contactID));
我现在可以用 Picaso 显示这张照片了:
Picasso.with(mainUserPhoto.getContext())
.load(uri)
.placeholder(R.drawable.image_placeholder)
.error(R.drawable.folder_placeholder)
.into(mainUserPhoto);
成功了。但我也需要将这张图片复制到我的文件夹中。如何将此联系人照片复制到我的文件夹?
在ContactsContract.Contacts
docs there's a convenience method called openContactPhotoInputStream
所以你可以这样做:
Uri contactUri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, Long.valueOf(contactId));
InputStream is = ContactsContract.Contacts.openContactPhotoInputStream(getContentResolver(), contactUri, true);
Se 将 InputStream
保存到本地文件,请参阅:
我得到联系人照片 URI
Uri uri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, Long.valueOf(contactID));
我现在可以用 Picaso 显示这张照片了:
Picasso.with(mainUserPhoto.getContext())
.load(uri)
.placeholder(R.drawable.image_placeholder)
.error(R.drawable.folder_placeholder)
.into(mainUserPhoto);
成功了。但我也需要将这张图片复制到我的文件夹中。如何将此联系人照片复制到我的文件夹?
在ContactsContract.Contacts
docs there's a convenience method called openContactPhotoInputStream
所以你可以这样做:
Uri contactUri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, Long.valueOf(contactId));
InputStream is = ContactsContract.Contacts.openContactPhotoInputStream(getContentResolver(), contactUri, true);
Se 将 InputStream
保存到本地文件,请参阅: