2011-08-23 126 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