添加新照片联系人以联系Android数据库

时间:2017-08-25 10:30:40

标签: android

我想在Android中创建一个Contact示例。 当我尝试添加带照片的联系人时,我遇到了问题。 没有发生错误,但是当我使用原生(默认)android的联系人应用程序时,我无法显示我添加的照片。

这是我的代码:

if (bitmap != null) {
        ByteArrayOutputStream stream = new ByteArrayOutputStream();
        bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);

        op = ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
                .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
                .withValue(ContactsContract.Data.IS_SUPER_PRIMARY, 1)
                .withValue(ContactsContract.Data.MIMETYPE,
                        ContactsContract.CommonDataKinds.Photo.MIMETYPE)
                .withValue(ContactsContract.CommonDataKinds.Photo.PHOTO, stream.toByteArray());
        //op.withYieldAllowed(true);
        ops.add(op.build());

        try {
            stream.flush();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

1 个答案:

答案 0 :(得分:0)

关注this example。它和你的一样,但它可以成功添加照片。