1

ContactsContract.CommonDataKinds.GroupMembershipについて読みまし たが、挿入に使用する URI がわかりません。

私はこの方法を用意しました:

public static Uri addToGroup(ContentResolver resolver, long personId,
            long groupId) {

        ContentValues values = new ContentValues();

        values.put(ContactsContract.CommonDataKinds.GroupMembership.CONTACT_ID, personId);

        values.put(ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID, groupId);

        return resolver.insert(uri, values);//URI is not known

    }

SDK 2.0 以降で使用する URI を誰か教えてもらえますか?

4

1 に答える 1

5

解決策を見つけたので、ここに投稿します。

public Uri addToGroup(long personId, long groupId) {

    //remove if exists
    this.removeFromGroup(personId, groupId);

    ContentValues values = new ContentValues();
    values.put(ContactsContract.CommonDataKinds.GroupMembership.RAW_CONTACT_ID,
            personId);
    values.put(
            ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID,
            groupId);
    values
            .put(
                    ContactsContract.CommonDataKinds.GroupMembership.MIMETYPE,
                    ContactsContract.CommonDataKinds.GroupMembership.CONTENT_ITEM_TYPE);

    return this.ctx.getContentResolver().insert(
            ContactsContract.Data.CONTENT_URI, values);

}

しかし、私は何かを取得しません。なぜRAW_CONTACT_IDand notを使用する必要があるのですか?CONTACT_ID後で nullpointerexception が発生します。

于 2010-03-22T11:54:02.297 に答える