2011-08-23 105 views
3

我想添加联系人。添加名称,电话等正在工作。但添加联系人图片不起作用。我没有任何例外。这是我的代码。
Android联系人图像设置问题

Bitmap bmImage = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory() + File.separator + "captured_receipt1.jpg"); 

ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
bmImage.compress(Bitmap.CompressFormat.JPEG, 80, baos);  
byte[] b = baos.toByteArray(); 

ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>(); 
ops.add(ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI) 
      .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, null) 
      .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, null) 
      .build()); 

ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI) 
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0) 
.withValue(ContactsContract.Data.MIMETYPE, 
ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE) 
.withValue(ContactsContract.CommonDataKinds.Photo.DATA15,b) 
.build()); 
+0

在那里使用try {}赶上(){},并添加一些测试对象中分离出来的一些数据进行调试... – JPM

回答

2

你的代码更改为类似.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE)东西。

+0

我已经解决了这个问题,我忘了提及的解决方案。谢谢IAmHappy,非常感谢。 – Sandy