私はアンドロイド開発に慣れていないので、コンセプト全体が完全に間違っている可能性があります。RawContact ディレクトリ エントリから特定のエントリを削除したいと考えています。これが私が持っているコードです:
Uri rawContactUri = ContentUris.withAppendedId(RawContacts.CONTENT_URI, rawContactId);
Uri entityUri = Uri.withAppendedPath(rawContactUri, Entity.CONTENT_DIRECTORY);
Cursor c = getContentResolver().query(entityUri,
new String[]{RawContacts._ID, Entity.DATA_ID, Entity.MIMETYPE,CommonDataKinds.GroupMembership.GROUP_SOURCE_ID},
null, null, null);
カーソル c を使用して、適切な Entity.DATA_ID を取得します。その後、エントリを削除しようとします:
getContentResolver().delete(entityUri,Entity.DATA_ID+"=?",
new String[]{id});
エラーが発生します:
java.lang.UnsupportedOperationException: URI: content://com.android.contacts/raw_contacts/2709/entity
私は何を間違っていますか?
UPD 1 グループ メンバーシップ エントリを削除しようとしています。