我知道可以通过此意图设置各种字段,例如地址,电话号码,姓名等......:
final Intent intent = new Intent(ContactsContract.Intents.SHOW_OR_CREATE_CONTACT, Uri.parse("tel:" +PhoneNumberService.formatNumber(phoneNumber, PhoneNumberFormat.NATIONAL));
intent.putExtra(ContactsContract.Intents.Insert.NAME, name);
intent.putExtra(ContactsContract.Intents.Insert.POSTAL_ISPRIMARY,address);
intent.putExtra(ContactsContract.Intents.Insert.POSTAL,address);
... //other stuff, like on this post: http://stackoverflow.com/q/3456319/878126
我想知道是否可以添加照片。
我已经尝试了下一个代码,但它似乎不起作用:
public static byte[] toByteArray(final Bitmap bitmap) {
if (bitmap == null || bitmap.isRecycled())
return null;
final ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
final byte[] byteArray = stream.toByteArray();
return byteArray;
}
final byte[] imageByteArray = toByteArray(mBitmap);
intent.putExtra(ContactsContract.CommonDataKinds.Photo.PHOTO, imageByteArray);
是否可以放置照片?如果是这样,怎么样?
我还试图弄清楚添加是否成功,这样我就可以获得联系密钥,并且如果需要可以修改它,但似乎" startActivityForResult&# 34;在这里没有帮助。
答案 0 :(得分:0)
我想知道你是否找到了合适的答案。我会评论,但我没有足够的积分。我还在寻找一个好的答案。
从文档中,无法显式创建新的联系人插入。这意味着需要使用URI和值(隐式)插入新的联系人数据。
唯一可行的方法是使用内容提供商创建新联系人,并添加包括默认图像在内的所有字段。然后立即使用ACTION_EDIT让用户编辑字段。
另请参阅Intents.ATTACH_IMAGE