Como atualizar a imagem de contato usando a operação do provedor de contato.

O código a seguir é usado para atualizar a imagem, mas gera uma exceção de valor inválido ou inválido. Qualquer corpo pode resolver isso.

Bitmap bitmap = ((BitmapDrawable)image.getDrawable()).getBitmap();
File f = new File(picturePath);
Uri photoUri = Uri.fromFile(f);

adicionar à codificação de lista de matriz

ops.add(ContentProviderOperation
                            .newUpdate(ContactsContract.Data.CONTENT_URI)
                            .withSelection(
                                    ContactsContract.Data.CONTACT_ID + " = ? AND " + ContactsContract.Data.MIMETYPE + " = ?",
                                    new String[] {
                                            contactid,
                                            ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE })
                            .withValue(Photo.Photo_Uri,photoUri ).build());

questionAnswers(2)

yourAnswerToTheQuestion