ContactsContract.CommonDataKinds.Phone

public static final class ContactsContract.CommonDataKinds.Phone
extends Object implements ContactsContract.DataColumnsWithJoins, ContactsContract.CommonDataKinds.CommonColumns

java.lang.Object
   ↳ android.provider.ContactsContract.CommonDataKinds.Phone


A data kind representing a telephone number.

You can use all columns defined for ContactsContract.Data as well as the following aliases.

Column aliases

Type AliasData column
String NUMBER ContactsContract.DataColumns.DATA1
int ContactsContract.CommonDataKinds.CommonColumns.TYPE ContactsContract.DataColumns.DATA2 Allowed values are:

String ContactsContract.CommonDataKinds.CommonColumns.LABEL ContactsContract.DataColumns.DATA3

Summary

Constants

String CONTENT_ITEM_TYPE

MIME type used when storing this in data table.

String CONTENT_TYPE

The MIME type of CONTENT_URI providing a directory of phones.

String EXTRA_ADDRESS_BOOK_INDEX

Add this query parameter to a URI to get back row counts grouped by the address book index as cursor extras.

String EXTRA_ADDRESS_BOOK_INDEX_COUNTS

The array of group counts for the corresponding group.

String EXTRA_ADDRESS_BOOK_INDEX_TITLES

The array of address book index titles, which are returned in the same order as the data in the cursor.

String NORMALIZED_NUMBER

The phone number's E164 representation.

String NUMBER

The phone number as the user entered it.

String SEARCH_DISPLAY_NAME_KEY

A boolean query parameter that can be used with CONTENT_FILTER_URI.

String SEARCH_PHONE_NUMBER_KEY

A boolean query parameter that can be used with CONTENT_FILTER_URI.

int TYPE_ASSISTANT

int TYPE_CALLBACK

int TYPE_CAR

int TYPE_COMPANY_MAIN

int TYPE_FAX_HOME

int TYPE_FAX_WORK

int TYPE_HOME

int TYPE_ISDN

int TYPE_MAIN

int TYPE_MMS

int TYPE_MOBILE

int TYPE_OTHER

int TYPE_OTHER_FAX

int TYPE_PAGER

int TYPE_RADIO

int TYPE_TELEX

int TYPE_TTY_TDD

int TYPE_WORK

int TYPE_WORK_MOBILE

int TYPE_WORK_PAGER

Inherited constants

Fields

public static final Uri CONTENT_FILTER_URI

The content:// style URL for phone lookup using a filter.

public static final Uri CONTENT_URI

The content:// style URI for all data records of the CONTENT_ITEM_TYPE MIME type, combined with the associated raw contact and aggregate contact data.

public static final Uri ENTERPRISE_CONTENT_FILTER_URI

It supports the similar semantics as CONTENT_FILTER_URI and returns the same columns.

public static final Uri ENTERPRISE_CONTENT_URI

URI used for getting all data records of the CONTENT_ITEM_TYPE MIME type, combined with the associated raw contact and aggregate contact data, from both the calling user and the managed profile that is linked to it.

Public methods

static CharSequence getTypeLabel(Resources res, int type, CharSequence label)

Return a CharSequence that best describes the given type, possibly substituting the given ContactsContract.CommonDataKinds.CommonColumns.LABEL value for ContactsContract.CommonDataKinds.BaseTypes.TYPE_CUSTOM.

static int getTypeLabelResource(int type)

Return the string resource that best describes the given ContactsContract.CommonDataKinds.CommonColumns.TYPE.

Inherited methods

Constants

CONTENT_ITEM_TYPE

Added in API level 5
public static final String CONTENT_ITEM_TYPE

MIME type used when storing this in data table.

Constant Value: "vnd.android.cursor.item/phone_v2"

CONTENT_TYPE

Added in API level 5
public static final String CONTENT_TYPE

The MIME type of CONTENT_URI providing a directory of phones.

Constant Value: "vnd.android.cursor.dir/phone_v2"

EXTRA_ADDRESS_BOOK_INDEX

public static final String EXTRA_ADDRESS_BOOK_INDEX

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);
 }
 

Constant Value: "android.provider.extra.ADDRESS_BOOK_INDEX"

EXTRA_ADDRESS_BOOK_INDEX_COUNTS

public static final String EXTRA_ADDRESS_BOOK_INDEX_COUNTS

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[]

Constant Value: "android.provider.extra.ADDRESS_BOOK_INDEX_COUNTS"

EXTRA_ADDRESS_BOOK_INDEX_TITLES

public static final String EXTRA_ADDRESS_BOOK_INDEX_TITLES

The array of address book index titles, which are returned in the same order as the data in the cursor.

TYPE: String[]

Constant Value: "android.provider.extra.ADDRESS_BOOK_INDEX_TITLES"

NORMALIZED_NUMBER

Added in API level 16
public static final String NORMALIZED_NUMBER

The phone number's E164 representation. This value can be omitted in which case the provider will try to automatically infer it. (It'll be left null if the provider fails to infer.) If present, NUMBER has to be set as well (it will be ignored otherwise).

Type: TEXT

Constant Value: "data4"

NUMBER

Added in API level 5
public static final String NUMBER

The phone number as the user entered it.

Type: TEXT

Constant Value: "data1"

SEARCH_DISPLAY_NAME_KEY

Added in API level 16
public static final String SEARCH_DISPLAY_NAME_KEY

A boolean query parameter that can be used with CONTENT_FILTER_URI. If "1" or "true", display names are searched. If "0" or "false", display names are not searched. Default is "1".

Constant Value: "search_display_name"

SEARCH_PHONE_NUMBER_KEY

Added in API level 16
public static final String SEARCH_PHONE_NUMBER_KEY

A boolean query parameter that can be used with CONTENT_FILTER_URI. If "1" or "true", phone numbers are searched. If "0" or "false", phone numbers are not searched. Default is "1".

Constant Value: "search_phone_number"

TYPE_ASSISTANT

Added in API level 5
public static final int TYPE_ASSISTANT

Constant Value: 19 (0x00000013)

TYPE_CALLBACK

Added in API level 5
public static final int TYPE_CALLBACK

Constant Value: 8 (0x00000008)

TYPE_CAR

Added in API level 5
public static final int TYPE_CAR

Constant Value: 9 (0x00000009)

TYPE_COMPANY_MAIN

Added in API level 5
public static final int TYPE_COMPANY_MAIN

Constant Value: 10 (0x0000000a)

TYPE_FAX_HOME

Added in API level 5
public static final int TYPE_FAX_HOME

Constant Value: 5 (0x00000005)

TYPE_FAX_WORK

Added in API level 5
public static final int TYPE_FAX_WORK

Constant Value: 4 (0x00000004)

TYPE_HOME

Added in API level 5
public static final int TYPE_HOME

Constant Value: 1 (0x00000001)

TYPE_ISDN

Added in API level 5
public static final int TYPE_ISDN

Constant Value: 11 (0x0000000b)

TYPE_MAIN

Added in API level 5
public static final int TYPE_MAIN

Constant Value: 12 (0x0000000c)

TYPE_MMS

Added in API level 5
public static final int TYPE_MMS

Constant Value: 20 (0x00000014)

TYPE_MOBILE

Added in API level 5
public static final int TYPE_MOBILE

Constant Value: 2 (0x00000002)

TYPE_OTHER

Added in API level 5
public static final int TYPE_OTHER

Constant Value: 7 (0x00000007)

TYPE_OTHER_FAX

Added in API level 5
public static final int TYPE_OTHER_FAX

Constant Value: 13 (0x0000000d)

TYPE_PAGER

Added in API level 5
public static final int TYPE_PAGER

Constant Value: 6 (0x00000006)

TYPE_RADIO

Added in API level 5
public static final int TYPE_RADIO

Constant Value: 14 (0x0000000e)

TYPE_TELEX

Added in API level 5
public static final int TYPE_TELEX

Constant Value: 15 (0x0000000f)

TYPE_TTY_TDD

Added in API level 5
public static final int TYPE_TTY_TDD

Constant Value: 16 (0x00000010)

TYPE_WORK

Added in API level 5
public static final int TYPE_WORK

Constant Value: 3 (0x00000003)

TYPE_WORK_MOBILE

Added in API level 5
public static final int TYPE_WORK_MOBILE

Constant Value: 17 (0x00000011)

TYPE_WORK_PAGER

Added in API level 5
public static final int TYPE_WORK_PAGER

Constant Value: 18 (0x00000012)

Fields

CONTENT_FILTER_URI

Added in API level 5
public static final Uri CONTENT_FILTER_URI

The content:// style URL for phone lookup using a filter. The filter returns records of MIME type CONTENT_ITEM_TYPE. The filter is applied to display names as well as phone numbers. The filter argument should be passed as an additional path segment after this URI.

Caution: This field doesn't sort results based on contacts frequency. For more information, see the Contacts Provider page.

CONTENT_URI

Added in API level 5
public static final Uri CONTENT_URI

The content:// style URI for all data records of the CONTENT_ITEM_TYPE MIME type, combined with the associated raw contact and aggregate contact data.

ENTERPRISE_CONTENT_FILTER_URI

Added in API level 24
public static final Uri ENTERPRISE_CONTENT_FILTER_URI

It supports the similar semantics as CONTENT_FILTER_URI and returns the same columns. This URI requires ContactsContract#DIRECTORY_PARAM_KEY in parameters, otherwise it will throw IllegalArgumentException.

Caution: If you publish your app to the Google Play Store, this field doesn't sort results based on contacts frequency. For more information, see the Contacts Provider page.

ENTERPRISE_CONTENT_URI

Added in API level 34
public static final Uri ENTERPRISE_CONTENT_URI

URI used for getting all data records of the CONTENT_ITEM_TYPE MIME type, combined with the associated raw contact and aggregate contact data, from both the calling user and the managed profile that is linked to it.

It supports the same semantics as CONTENT_URI and returns the same columns.
If the device has no managed profile that is linked to the calling user, it behaves in the exact same way as CONTENT_URI.
If there is a managed profile linked to the calling user, it will return merged results from both.

If a result is from the managed profile, the following changes are made to the data:

Public methods

getTypeLabel

Added in API level 5
public static CharSequence getTypeLabel (Resources res, 
                int type, 
                CharSequence label)

Return a CharSequence that best describes the given type, possibly substituting the given ContactsContract.CommonDataKinds.CommonColumns.LABEL value for ContactsContract.CommonDataKinds.BaseTypes.TYPE_CUSTOM.

Parameters
res Resources

type int

label CharSequence: This value may be null.

Returns
CharSequence

getTypeLabelResource

Added in API level 5
public static int getTypeLabelResource (int type)

Return the string resource that best describes the given ContactsContract.CommonDataKinds.CommonColumns.TYPE. Will always return a valid resource.

Parameters
type int

Returns
int