Stay organized with collections
Save and categorize content based on your preferences.
GroupMembership
class GroupMembership : ContactsContract.DataColumnsWithJoins
Group Membership.
You can use all columns defined for ContactsContract.Data
as well as the following aliases.
Column aliases
Type |
Alias |
Data column |
long |
GROUP_ROW_ID |
DATA1 |
|
String |
GROUP_SOURCE_ID |
none |
The sourceid of the group that this group membership refers to. Exactly one of this or GROUP_ROW_ID must be set when inserting a row.
If this field is specified, the provider will first try to look up a group with this Groups.SOURCE_ID . If such a group is found, it will use the corresponding row id. If the group is not found, it will create one.
|
Summary
Constants |
static String |
MIME type used when storing this in data table.
|
static String |
Add this query parameter to a URI to get back row counts grouped by the address book index as cursor extras.
|
static String |
The array of group counts for the corresponding group.
|
static String |
The array of address book index titles, which are returned in the same order as the data in the cursor.
|
static String |
The row id of the group that this group membership refers to.
|
static String |
The sourceid of the group that this group membership refers to.
|
Constants
CONTENT_ITEM_TYPE
static val CONTENT_ITEM_TYPE: String
MIME type used when storing this in data table.
Value: "vnd.android.cursor.item/group_membership"
static val EXTRA_ADDRESS_BOOK_INDEX: String
Add this query parameter to a URI to get back row counts grouped by the address book index as cursor extras. For most languages it is the first letter of the sort key. This parameter does not affect the main content of the cursor.
Example:
import android.provider.ContactsContract.Contacts;
Uri uri = Contacts.CONTENT_URI.buildUpon()
.appendQueryParameter(Contacts.EXTRA_ADDRESS_BOOK_INDEX, "true")
.build();
Cursor cursor = getContentResolver().query(uri,
new String[] {Contacts.DISPLAY_NAME},
null, null, null);
Bundle bundle = cursor.getExtras();
if (bundle.containsKey(Contacts.EXTRA_ADDRESS_BOOK_INDEX_TITLES) &&
bundle.containsKey(Contacts.EXTRA_ADDRESS_BOOK_INDEX_COUNTS)) {
String sections[] =
bundle.getStringArray(Contacts.EXTRA_ADDRESS_BOOK_INDEX_TITLES);
int counts[] = bundle.getIntArray(Contacts.EXTRA_ADDRESS_BOOK_INDEX_COUNTS);
}
Value: "android.provider.extra.ADDRESS_BOOK_INDEX"
static val EXTRA_ADDRESS_BOOK_INDEX_COUNTS: String
The array of group counts for the corresponding group. Contains the same number of elements as the EXTRA_ADDRESS_BOOK_INDEX_TITLES array.
TYPE: int[]
Value: "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"
static val EXTRA_ADDRESS_BOOK_INDEX_TITLES: String
The array of address book index titles, which are returned in the same order as the data in the cursor.
TYPE: String[]
Value: "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"
GROUP_ROW_ID
static val GROUP_ROW_ID: String
The row id of the group that this group membership refers to. Exactly one of this or GROUP_SOURCE_ID
must be set when inserting a row.
Type: INTEGER
Value: "data1"
GROUP_SOURCE_ID
static val GROUP_SOURCE_ID: String
The sourceid of the group that this group membership refers to. Exactly one of this or GROUP_ROW_ID
must be set when inserting a row.
Type: TEXT
Value: "group_sourceid"
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-10 UTC."],[],[],null,["# ContactsContract.CommonDataKinds.GroupMembership\n\nAdded in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)\n\nGroupMembership\n===============\n\n*** ** * ** ***\n\nKotlin \\|[Java](/reference/android/provider/ContactsContract.CommonDataKinds.GroupMembership \"View this page in Java\") \n\n```\nclass GroupMembership : ContactsContract.DataColumnsWithJoins\n```\n\n|---|------------------------------------------------------------------------|\n| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html) ||\n| ↳ | [android.provider.ContactsContract.CommonDataKinds.GroupMembership](#) |\n\nGroup Membership.\n\nYou can use all columns defined for [ContactsContract.Data](/reference/kotlin/android/provider/ContactsContract.Data) as well as the following aliases.\n\nColumn aliases\n--------------\n\n| Type | Alias | Data column ||\n|--------|---------------------------------------------------|----------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| long | [GROUP_ROW_ID](#GROUP_ROW_ID:kotlin.String) | [DATA1](/reference/kotlin/android/provider/ContactsContract.DataColumns#DATA1:kotlin.String) | |\n| String | [GROUP_SOURCE_ID](#GROUP_SOURCE_ID:kotlin.String) | none | The sourceid of the group that this group membership refers to. Exactly one of this or [GROUP_ROW_ID](#GROUP_ROW_ID:kotlin.String) must be set when inserting a row. If this field is specified, the provider will first try to look up a group with this [Groups.SOURCE_ID](/reference/kotlin/android/provider/ContactsContract.Groups). If such a group is found, it will use the corresponding row id. If the group is not found, it will create one. |\n\nSummary\n-------\n\n| Constants ||\n|-----------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| static [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [CONTENT_ITEM_TYPE](#CONTENT_ITEM_TYPE:kotlin.String) MIME type used when storing this in data table. |\n| static [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [EXTRA_ADDRESS_BOOK_INDEX](#EXTRA_ADDRESS_BOOK_INDEX:kotlin.String) Add this query parameter to a URI to get back row counts grouped by the address book index as cursor extras. |\n| static [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [EXTRA_ADDRESS_BOOK_INDEX_COUNTS](#EXTRA_ADDRESS_BOOK_INDEX_COUNTS:kotlin.String) The array of group counts for the corresponding group. |\n| static [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [EXTRA_ADDRESS_BOOK_INDEX_TITLES](#EXTRA_ADDRESS_BOOK_INDEX_TITLES:kotlin.String) The array of address book index titles, which are returned in the same order as the data in the cursor. |\n| static [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [GROUP_ROW_ID](#GROUP_ROW_ID:kotlin.String) The row id of the group that this group membership refers to. |\n| static [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | [GROUP_SOURCE_ID](#GROUP_SOURCE_ID:kotlin.String) The sourceid of the group that this group membership refers to. |\n\nConstants\n---------\n\n### CONTENT_ITEM_TYPE\n\nAdded in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nstatic val CONTENT_ITEM_TYPE: String\n```\n\nMIME type used when storing this in data table. \n\n Value: \"vnd.android.cursor.item/group_membership\"\n\n### EXTRA_ADDRESS_BOOK_INDEX\n\n```\nstatic val EXTRA_ADDRESS_BOOK_INDEX: String\n```\n\nAdd this query parameter to a URI to get back row counts grouped by the address book index as cursor extras. For most languages it is the first letter of the sort key. This parameter does not affect the main content of the cursor.\n\n```kotlin\nExample:\n \n import android.provider.ContactsContract.Contacts;\n \n Uri uri = Contacts.CONTENT_URI.buildUpon()\n .appendQueryParameter(Contacts.EXTRA_ADDRESS_BOOK_INDEX, \"true\")\n .build();\n Cursor cursor = getContentResolver().query(uri,\n new String[] {Contacts.DISPLAY_NAME},\n null, null, null);\n Bundle bundle = cursor.getExtras();\n if (bundle.containsKey(Contacts.EXTRA_ADDRESS_BOOK_INDEX_TITLES) &&\n bundle.containsKey(Contacts.EXTRA_ADDRESS_BOOK_INDEX_COUNTS)) {\n String sections[] =\n bundle.getStringArray(Contacts.EXTRA_ADDRESS_BOOK_INDEX_TITLES);\n int counts[] = bundle.getIntArray(Contacts.EXTRA_ADDRESS_BOOK_INDEX_COUNTS);\n }\n \n```\n\n\u003cbr /\u003e\n\n Value: \"android.provider.extra.ADDRESS_BOOK_INDEX\"\n\n### EXTRA_ADDRESS_BOOK_INDEX_COUNTS\n\n```\nstatic val EXTRA_ADDRESS_BOOK_INDEX_COUNTS: String\n```\n\nThe array of group counts for the corresponding group. Contains the same number of elements as the EXTRA_ADDRESS_BOOK_INDEX_TITLES array.\n\nTYPE: int\\[\\] \n\n Value: \"android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS\"\n\n### EXTRA_ADDRESS_BOOK_INDEX_TITLES\n\n```\nstatic val EXTRA_ADDRESS_BOOK_INDEX_TITLES: String\n```\n\nThe array of address book index titles, which are returned in the same order as the data in the cursor.\n\nTYPE: String\\[\\] \n\n Value: \"android.provider.extra.ADDRESS_BOOK_INDEX_TITLES\"\n\n### GROUP_ROW_ID\n\nAdded in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nstatic val GROUP_ROW_ID: String\n```\n\nThe row id of the group that this group membership refers to. Exactly one of this or [GROUP_SOURCE_ID](#GROUP_SOURCE_ID:kotlin.String) must be set when inserting a row.\n\nType: INTEGER \n\n Value: \"data1\"\n\n### GROUP_SOURCE_ID\n\nAdded in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels) \n\n```\nstatic val GROUP_SOURCE_ID: String\n```\n\nThe sourceid of the group that this group membership refers to. Exactly one of this or [GROUP_ROW_ID](#GROUP_ROW_ID:kotlin.String) must be set when inserting a row.\n\nType: TEXT \n\n Value: \"group_sourceid\""]]