ContactsContract.CommonDataKinds.Email
public
static
final
class
ContactsContract.CommonDataKinds.Email
extends Object
implements
ContactsContract.DataColumnsWithJoins,
ContactsContract.CommonDataKinds.CommonColumns
java.lang.Object | |
↳ | android.provider.ContactsContract.CommonDataKinds.Email |
A data kind representing an email address.
You can use all columns defined for ContactsContract.Data
as
well as the following aliases.
Column aliases
Type | Alias | Data column | |
---|---|---|---|
String | ADDRESS |
ContactsContract.DataColumns.DATA1 |
Email address itself. |
int | ContactsContract.CommonDataKinds.CommonColumns.TYPE |
ContactsContract.DataColumns.DATA2 |
Allowed values are:
|
String | ContactsContract.CommonDataKinds.CommonColumns.LABEL |
ContactsContract.DataColumns.DATA3 |
Summary
Constants | |
---|---|
String |
ADDRESS
The email address. |
String |
CONTENT_ITEM_TYPE
MIME type used when storing this in data table. |
String |
CONTENT_TYPE
The MIME type of |
String |
DISPLAY_NAME
The display name for the email address Type: TEXT |
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. |
int |
TYPE_HOME
|
int |
TYPE_MOBILE
|
int |
TYPE_OTHER
|
int |
TYPE_WORK
|
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Uri |
CONTENT_FILTER_URI
The content:// style URL for email lookup using a filter. |
public
static
final
Uri |
CONTENT_LOOKUP_URI
The content:// style URL for looking up data rows by email address. |
public
static
final
Uri |
CONTENT_URI
The content:// style URI for all data records of the
|
public
static
final
Uri |
ENTERPRISE_CONTENT_FILTER_URI
It supports the similar semantics as |
public
static
final
Uri |
ENTERPRISE_CONTENT_LOOKUP_URI
URI used for looking up contacts by email on the contact databases of 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 |
static
int
|
getTypeLabelResource(int type)
Return the string resource that best describes the given
|
Inherited methods | |
---|---|
Constants
ADDRESS
public static final String ADDRESS
The email address.
Type: TEXT
Constant Value: "data1"
CONTENT_ITEM_TYPE
public static final String CONTENT_ITEM_TYPE
MIME type used when storing this in data table.
Constant Value: "vnd.android.cursor.item/email_v2"
CONTENT_TYPE
public static final String CONTENT_TYPE
The MIME type of CONTENT_URI
providing a directory of email addresses.
Constant Value: "vnd.android.cursor.dir/email_v2"
DISPLAY_NAME
public static final String DISPLAY_NAME
The display name for the email address
Type: TEXT
Constant Value: "data4"
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"
Fields
CONTENT_FILTER_URI
public static final Uri CONTENT_FILTER_URI
The content:// style URL for email lookup using a filter. The filter returns
records of MIME type CONTENT_ITEM_TYPE
. The filter is applied
to display names as well as email addresses. The filter argument should be passed
as an additional path segment after this URI.
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.
The query in the following example will return "Robert Parr ([email protected])" as well as "Bob Parr ([email protected])".
Uri uri = Uri.withAppendedPath(Email.CONTENT_LOOKUP_URI, Uri.encode("bob")); Cursor c = getContentResolver().query(uri, new String[]{Email.DISPLAY_NAME, Email.DATA}, null, null, null);
CONTENT_LOOKUP_URI
public static final Uri CONTENT_LOOKUP_URI
The content:// style URL for looking up data rows by email address. The lookup argument, an email address, should be passed as an additional path segment after this URI.
Example:
Uri uri = Uri.withAppendedPath(Email.CONTENT_LOOKUP_URI, Uri.encode(email)); Cursor c = getContentResolver().query(uri, new String[]{Email.CONTACT_ID, Email.DISPLAY_NAME, Email.DATA}, null, null, null);
CONTENT_URI
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
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. The passed directory
can belong either to the calling user or to a managed profile that is linked to it.
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_LOOKUP_URI
public static final Uri ENTERPRISE_CONTENT_LOOKUP_URI
URI used for looking up contacts by email on the contact databases of both the calling user and the managed profile that is linked to it.
It supports the same semantics as CONTENT_LOOKUP_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_LOOKUP_URI
.
If there is a managed profile linked to the calling user, it first queries the
calling user's contact database, and only if no matching contacts are found there it
then queries the managed profile database.
If a result is from the managed profile, the following changes are made to the data:
ContactsContract.ContactsColumns.PHOTO_THUMBNAIL_URI
andContactsContract.ContactsColumns.PHOTO_URI
will be rewritten to specialURIs. UseContentResolver#openAssetFileDescriptor
or its siblings to load pictures from them.ContactsContract.ContactsColumns.PHOTO_ID
andContactsContract.ContactsColumns.PHOTO_FILE_ID
will be set to null. Don't use them.ContactsContract.RawContactsColumns.CONTACT_ID
andContactsContract.ContactsColumns.LOOKUP_KEY
will be replaced with artificial values. These values will be consistent across multiple queries, but do not use them in places that do not explicitly say they accept them. If they are used in theselection
param inContentProvider.query(Uri, String, Bundle, CancellationSignal)
, the result is undefined.- In order to tell whether a contact is from the managed profile, use
ContactsContract.Contacts#isEnterpriseContactId(long)
.A contact lookup URL built by
ContactsContract.Contacts#getLookupUri(long, String)
with aContactsContract.RawContactsColumns.CONTACT_ID
and aContactsContract.ContactsColumns.LOOKUP_KEY
returned by this API can be passed toContactsContract.QuickContact#showQuickContact
even if a contact is from the managed profile.Uri lookupUri = Uri.withAppendedPath(Email.ENTERPRISE_CONTENT_LOOKUP_URI, Uri.encode(email));
Public methods
getTypeLabel
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
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 |