class Email : ContactsContract.CommonDataKinds.CommonColumns, ContactsContract.DataColumnsWithJoins
kotlin.Any | |
↳ | 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 |
DATA1 |
Email address itself. |
int | TYPE |
DATA2 |
Allowed values are:
|
String | LABEL |
DATA3 |
Summary
Constants | |
---|---|
static String |
The email address. |
static String |
MIME type used when storing this in data table. |
static String |
The MIME type of |
static String |
The display name for the email address |
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 Int | |
static Int | |
static Int | |
static Int |
Inherited constants | |
---|---|
Public methods | |
---|---|
static CharSequence! |
getTypeLabel(res: Resources!, type: Int, label: CharSequence?) Return a |
static Int |
getTypeLabelResource(type: Int) Return the string resource that best describes the given |
Properties | |
---|---|
static Uri! |
The content:// style URL for email lookup using a filter. |
static Uri! |
The content:// style URL for looking up data rows by email address. |
static Uri! |
The content:// style URI for all data records of the |
static Uri! |
It supports the similar semantics as |
static 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. |
Constants
ADDRESS
static val ADDRESS: String
The email address.
Type: TEXT
Value: "data1"
CONTENT_ITEM_TYPE
static val CONTENT_ITEM_TYPE: String
MIME type used when storing this in data table.
Value: "vnd.android.cursor.item/email_v2"
CONTENT_TYPE
static val CONTENT_TYPE: String
The MIME type of CONTENT_URI
providing a directory of email addresses.
Value: "vnd.android.cursor.dir/email_v2"
DISPLAY_NAME
static val DISPLAY_NAME: String
The display name for the email address
Type: TEXT
Value: "data4"
EXTRA_ADDRESS_BOOK_INDEX
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"
EXTRA_ADDRESS_BOOK_INDEX_COUNTS
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"
EXTRA_ADDRESS_BOOK_INDEX_TITLES
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"
Public methods
getTypeLabel
static fun getTypeLabel(
res: Resources!,
type: Int,
label: CharSequence?
): CharSequence!
Return a CharSequence
that best describes the given type, possibly substituting the given LABEL
value for TYPE_CUSTOM
.
Parameters | |
---|---|
label |
CharSequence?: This value may be null . |
getTypeLabelResource
static fun getTypeLabelResource(type: Int): Int
Return the string resource that best describes the given TYPE
. Will always return a valid resource.
Properties
CONTENT_FILTER_URI
static val CONTENT_FILTER_URI: 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 (bob@incredibles.com)" as well as "Bob Parr (incredible@android.com)".
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
static val CONTENT_LOOKUP_URI: 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
static val CONTENT_URI: 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
static val ENTERPRISE_CONTENT_FILTER_URI: 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
static val ENTERPRISE_CONTENT_LOOKUP_URI: 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:
PHOTO_THUMBNAIL_URI
andPHOTO_URI
will be rewritten to specialURIs. Use android.content.ContentResolver#openAssetFileDescriptor or its siblings to load pictures from them.PHOTO_ID
andPHOTO_FILE_ID
will be set to null. Don't use them.CONTACT_ID
andLOOKUP_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 in android.content.ContentProvider#query, 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 aCONTACT_ID
and aLOOKUP_KEY
returned by this API can be passed to android.provider.ContactsContract.QuickContact#showQuickContact even if a contact is from the managed profile.Uri lookupUri = Uri.withAppendedPath(Email.ENTERPRISE_CONTENT_LOOKUP_URI, Uri.encode(email));