public final class

ContactsContract

extends Object
java.lang.Object
   ↳ android.provider.ContactsContract

Class Overview

The contract between the contacts provider and applications. Contains definitions for the supported URIs and columns. These APIs supersede ContactsContract.Contacts.

Overview

ContactsContract defines an extensible database of contact-related information. Contact information is stored in a three-tier data model:

The ContactsContract.Data table contains all kinds of personal data: phone numbers, email addresses etc. The list of data kinds that can be stored in this table is open-ended. There is a predefined set of common kinds, but any application can add its own data kinds.

A row in the ContactsContract.RawContacts table represents a set of Data describing a person and associated with a single account.

A row in the ContactsContract.Contacts table represents an aggregate of one or more RawContacts presumably describing the same person.

Other tables include:

ContactsContract.Groups, which contains information about raw contact groups - the current API does not support the notion of groups spanning multiple accounts.

ContactsContract.StatusUpdates, which contains social status updates including IM availability.

ContactsContract.AggregationExceptions, which is used for manual aggregation and disaggregation of raw contacts

ContactsContract.Settings, which contains visibility and sync settings for accounts and groups.

ContactsContract.SyncState, which contains free-form data maintained on behalf of sync adapters

ContactsContract.PhoneLookup, which is used for quick caller-ID lookup

Summary

Nested Classes
class ContactsContract.AggregationExceptions

Constants for the contact aggregation exceptions table, which contains aggregation rules overriding those used by automatic aggregation. 

interface ContactsContract.BaseSyncColumns Generic columns for use by sync adapters. 
class ContactsContract.CommonDataKinds Container for definitions of common data types stored in the ContactsContract.Data table. 
interface ContactsContract.ContactOptionsColumns  
interface ContactsContract.ContactStatusColumns  
class ContactsContract.Contacts Constants for the contacts table, which contains a record per aggregate of raw contacts representing the same person. 
interface ContactsContract.ContactsColumns  
class ContactsContract.Data

Constants for the data table, which contains data points tied to a raw contact. 

interface ContactsContract.DataColumns Columns in the Data table. 
interface ContactsContract.DataColumnsWithJoins Combines all columns returned by ContactsContract.Data table queries. 
class ContactsContract.Groups Constants for the groups table. 
interface ContactsContract.GroupsColumns  
class ContactsContract.Intents Contains helper classes used to create or manage Intents that involve contacts. 
class ContactsContract.PhoneLookup A table that represents the result of looking up a phone number, for example for caller ID. 
interface ContactsContract.PhoneLookupColumns  
class ContactsContract.Presence This class is deprecated. This old name was never meant to be made public. Do not use.  
interface ContactsContract.PresenceColumns Additional data mixed in with ContactsContract.ContactStatusColumns to link back to specific _ID entries. 
class ContactsContract.QuickContact Helper methods to display QuickContact dialogs that allow users to pivot on a specific Contacts entry. 
class ContactsContract.RawContacts Constants for the raw contacts table, which contains the base contact information per sync source. 
interface ContactsContract.RawContactsColumns  
class ContactsContract.RawContactsEntity

Constants for the raw contacts entities table, which can be though of as an outer join of the raw_contacts table with the data table. 

class ContactsContract.Settings

Contacts-specific settings for various Account's. 

interface ContactsContract.SettingsColumns  
interface ContactsContract.StatusColumns Social status update columns. 
class ContactsContract.StatusUpdates

A status update is linked to a ContactsContract.Data row and captures the user's latest status update via the corresponding source, e.g. 

interface ContactsContract.SyncColumns Columns that appear when each row of a table belongs to a specific account, including sync information that an account may need. 
class ContactsContract.SyncState A table provided for sync adapters to use for storing private sync state data. 
Constants
String AUTHORITY The authority for the contacts provider
Uri AUTHORITY_URI A content:// style uri to the authority for the contacts provider
String CALLER_IS_SYNCADAPTER An optional insert, update or delete URI parameter that allows the caller to specify that it is a sync adapter.
Public Constructors
ContactsContract()
[Expand]
Inherited Methods
From class java.lang.Object

Constants

public static final String AUTHORITY

Since: API Level 5

The authority for the contacts provider

Constant Value: "com.android.contacts"

public static final Uri AUTHORITY_URI

Since: API Level 5

A content:// style uri to the authority for the contacts provider

public static final String CALLER_IS_SYNCADAPTER

Since: API Level 5

An optional insert, update or delete URI parameter that allows the caller to specify that it is a sync adapter. The default value is false. If true the dirty flag is not automatically set and the "syncToNetwork" parameter is set to false when calling notifyChange(android.net.Uri, android.database.ContentObserver, boolean).

Constant Value: "caller_is_syncadapter"

Public Constructors

public ContactsContract ()

Since: API Level 5