Making new Contacts APIs visible in Eclair SDK

Bug: http://b/2186595
 
Change-Id: Iaba8514276299504af6ab0714577eb37d9608237
diff --git a/api/current.xml b/api/current.xml
index ca2cceb..e9f13ba 100644
--- a/api/current.xml
+++ b/api/current.xml
@@ -112806,6 +112806,58 @@
 >
 </field>
 </class>
+<interface name="ContactsContract.BaseSyncColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="SYNC1"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;sync1&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SYNC2"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;sync2&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SYNC3"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;sync3&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SYNC4"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;sync4&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.CommonDataKinds"
  extends="java.lang.Object"
  abstract="false"
@@ -112834,6 +112886,49 @@
 >
 </field>
 </interface>
+<interface name="ContactsContract.CommonDataKinds.CommonColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<implements name="android.provider.ContactsContract.CommonDataKinds.BaseTypes">
+</implements>
+<field name="DATA"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data1&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="LABEL"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data3&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="TYPE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data2&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.CommonDataKinds.Email"
  extends="java.lang.Object"
  abstract="false"
@@ -112842,6 +112937,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.CommonDataKinds.CommonColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <method name="getTypeLabel"
  return="java.lang.CharSequence"
  abstract="false"
@@ -112988,6 +113087,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.CommonDataKinds.CommonColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <method name="getTypeResource"
  return="int"
  abstract="false"
@@ -113065,6 +113168,8 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <field name="CONTENT_ITEM_TYPE"
  type="java.lang.String"
  transient="false"
@@ -113107,6 +113212,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.CommonDataKinds.CommonColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <method name="getProtocolLabel"
  return="java.lang.CharSequence"
  abstract="false"
@@ -113352,6 +113461,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.CommonDataKinds.CommonColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <field name="CONTENT_ITEM_TYPE"
  type="java.lang.String"
  transient="false"
@@ -113438,6 +113551,8 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <field name="CONTENT_ITEM_TYPE"
  type="java.lang.String"
  transient="false"
@@ -113469,6 +113584,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.CommonDataKinds.CommonColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <method name="getTypeLabel"
  return="java.lang.CharSequence"
  abstract="false"
@@ -113618,6 +113737,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.CommonDataKinds.CommonColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <method name="getTypeLabel"
  return="java.lang.CharSequence"
  abstract="false"
@@ -113930,6 +114053,8 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <field name="CONTENT_ITEM_TYPE"
  type="java.lang.String"
  transient="false"
@@ -113961,6 +114086,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.CommonDataKinds.CommonColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <field name="CONTENT_ITEM_TYPE"
  type="java.lang.String"
  transient="false"
@@ -114146,6 +114275,8 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <field name="CONTENT_ITEM_TYPE"
  type="java.lang.String"
  transient="false"
@@ -114265,6 +114396,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.CommonDataKinds.CommonColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <method name="getTypeLabel"
  return="java.lang.CharSequence"
  abstract="false"
@@ -114457,6 +114592,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.CommonDataKinds.CommonColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <field name="CONTENT_ITEM_TYPE"
  type="java.lang.String"
  transient="false"
@@ -114557,6 +114696,143 @@
 >
 </field>
 </class>
+<interface name="ContactsContract.ContactOptionsColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="CUSTOM_RINGTONE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;custom_ringtone&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="LAST_TIME_CONTACTED"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;last_time_contacted&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SEND_TO_VOICEMAIL"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;send_to_voicemail&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="STARRED"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;starred&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="TIMES_CONTACTED"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;times_contacted&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
+<interface name="ContactsContract.ContactStatusColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="CONTACT_PRESENCE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;contact_presence&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="CONTACT_STATUS"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;contact_status&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="CONTACT_STATUS_ICON"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;contact_status_icon&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="CONTACT_STATUS_LABEL"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;contact_status_label&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="CONTACT_STATUS_RES_PACKAGE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;contact_status_res_package&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="CONTACT_STATUS_TIMESTAMP"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;contact_status_ts&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.Contacts"
  extends="java.lang.Object"
  abstract="false"
@@ -114567,6 +114843,12 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.ContactOptionsColumns">
+</implements>
+<implements name="android.provider.ContactsContract.ContactStatusColumns">
+</implements>
+<implements name="android.provider.ContactsContract.ContactsColumns">
+</implements>
 <method name="getLookupUri"
  return="android.net.Uri"
  abstract="false"
@@ -114756,6 +115038,8 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.ContactsColumns">
+</implements>
 <field name="CONTENT_DIRECTORY"
  type="java.lang.String"
  transient="false"
@@ -114778,6 +115062,8 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.DataColumns">
+</implements>
 <field name="CONTENT_DIRECTORY"
  type="java.lang.String"
  transient="false"
@@ -114800,6 +115086,8 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.DataColumns">
+</implements>
 <field name="CONTENT_DIRECTORY"
  type="java.lang.String"
  transient="false"
@@ -114812,6 +115100,69 @@
 >
 </field>
 </class>
+<interface name="ContactsContract.ContactsColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="DISPLAY_NAME"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;display_name&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="HAS_PHONE_NUMBER"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;has_phone_number&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="IN_VISIBLE_GROUP"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;in_visible_group&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="LOOKUP_KEY"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;lookup&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="PHOTO_ID"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;photo_id&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.Data"
  extends="java.lang.Object"
  abstract="false"
@@ -114820,6 +115171,8 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.DataColumnsWithJoins">
+</implements>
 <method name="getContactLookupUri"
  return="android.net.Uri"
  abstract="false"
@@ -114857,6 +115210,300 @@
 >
 </field>
 </class>
+<interface name="ContactsContract.DataColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="DATA1"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data1&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA10"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data10&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA11"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data11&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA12"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data12&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA13"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data13&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA14"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data14&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA15"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data15&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA2"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data2&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA3"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data3&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA4"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data4&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA5"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data5&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA6"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data6&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA7"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data7&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA8"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data8&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA9"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data9&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA_VERSION"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data_version&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="IS_PRIMARY"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;is_primary&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="IS_SUPER_PRIMARY"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;is_super_primary&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="MIMETYPE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;mimetype&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="RAW_CONTACT_ID"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;raw_contact_id&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SYNC1"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data_sync1&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SYNC2"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data_sync2&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SYNC3"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data_sync3&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SYNC4"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;data_sync4&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
+<interface name="ContactsContract.DataColumnsWithJoins"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<implements name="android.provider.BaseColumns">
+</implements>
+<implements name="android.provider.ContactsContract.ContactOptionsColumns">
+</implements>
+<implements name="android.provider.ContactsContract.ContactStatusColumns">
+</implements>
+<implements name="android.provider.ContactsContract.ContactsColumns">
+</implements>
+<implements name="android.provider.ContactsContract.DataColumns">
+</implements>
+<implements name="android.provider.ContactsContract.RawContactsColumns">
+</implements>
+<implements name="android.provider.ContactsContract.StatusColumns">
+</implements>
+</interface>
 <class name="ContactsContract.Groups"
  extends="java.lang.Object"
  abstract="false"
@@ -114867,6 +115514,10 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.GroupsColumns">
+</implements>
+<implements name="android.provider.ContactsContract.SyncColumns">
+</implements>
 <field name="CONTENT_ITEM_TYPE"
  type="java.lang.String"
  transient="false"
@@ -114910,6 +115561,102 @@
 >
 </field>
 </class>
+<interface name="ContactsContract.GroupsColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="DELETED"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;deleted&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="GROUP_VISIBLE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;group_visible&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="NOTES"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;notes&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SHOULD_SYNC"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;should_sync&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SUMMARY_COUNT"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;summ_count&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SUMMARY_WITH_PHONES"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;summ_phones&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SYSTEM_ID"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;system_id&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="TITLE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;title&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.Intents"
  extends="java.lang.Object"
  abstract="false"
@@ -115328,6 +116075,12 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.ContactOptionsColumns">
+</implements>
+<implements name="android.provider.ContactsContract.ContactsColumns">
+</implements>
+<implements name="android.provider.ContactsContract.PhoneLookupColumns">
+</implements>
 <field name="CONTENT_FILTER_URI"
  type="android.net.Uri"
  transient="false"
@@ -115339,6 +116092,47 @@
 >
 </field>
 </class>
+<interface name="ContactsContract.PhoneLookupColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="LABEL"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;label&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="NUMBER"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;number&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="TYPE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;type&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.Presence"
  extends="android.provider.ContactsContract.StatusUpdates"
  abstract="false"
@@ -115356,6 +116150,69 @@
 >
 </constructor>
 </class>
+<interface name="ContactsContract.PresenceColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="CUSTOM_PROTOCOL"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;custom_protocol&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DATA_ID"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;presence_data_id&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="IM_ACCOUNT"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;im_account&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="IM_HANDLE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;im_handle&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="PROTOCOL"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;protocol&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.QuickContact"
  extends="java.lang.Object"
  abstract="false"
@@ -115458,6 +116315,12 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.ContactOptionsColumns">
+</implements>
+<implements name="android.provider.ContactsContract.RawContactsColumns">
+</implements>
+<implements name="android.provider.ContactsContract.SyncColumns">
+</implements>
 <method name="getContactLookupUri"
  return="android.net.Uri"
  abstract="false"
@@ -115560,6 +116423,8 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.DataColumns">
+</implements>
 <field name="CONTENT_DIRECTORY"
  type="java.lang.String"
  transient="false"
@@ -115582,6 +116447,8 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.DataColumns">
+</implements>
 <field name="CONTENT_DIRECTORY"
  type="java.lang.String"
  transient="false"
@@ -115605,6 +116472,47 @@
 >
 </field>
 </class>
+<interface name="ContactsContract.RawContactsColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="AGGREGATION_MODE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;aggregation_mode&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="CONTACT_ID"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;contact_id&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DELETED"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;deleted&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.RawContactsEntity"
  extends="java.lang.Object"
  abstract="false"
@@ -115615,6 +116523,10 @@
 >
 <implements name="android.provider.BaseColumns">
 </implements>
+<implements name="android.provider.ContactsContract.DataColumns">
+</implements>
+<implements name="android.provider.ContactsContract.RawContactsColumns">
+</implements>
 <field name="CONTENT_TYPE"
  type="java.lang.String"
  transient="false"
@@ -115689,6 +116601,80 @@
 >
 </field>
 </class>
+<interface name="ContactsContract.StatusColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<field name="PRESENCE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;mode&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="STATUS"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;status&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="STATUS_ICON"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;status_icon&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="STATUS_LABEL"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;status_label&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="STATUS_RES_PACKAGE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;status_res_package&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="STATUS_TIMESTAMP"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;status_ts&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.StatusUpdates"
  extends="java.lang.Object"
  abstract="false"
@@ -115697,6 +116683,10 @@
  deprecated="not deprecated"
  visibility="public"
 >
+<implements name="android.provider.ContactsContract.PresenceColumns">
+</implements>
+<implements name="android.provider.ContactsContract.StatusColumns">
+</implements>
 <method name="getPresenceIconResourceId"
  return="int"
  abstract="false"
@@ -115756,6 +116746,71 @@
 >
 </field>
 </class>
+<interface name="ContactsContract.SyncColumns"
+ abstract="true"
+ static="true"
+ final="false"
+ deprecated="not deprecated"
+ visibility="protected"
+>
+<implements name="android.provider.ContactsContract.BaseSyncColumns">
+</implements>
+<field name="ACCOUNT_NAME"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;account_name&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="ACCOUNT_TYPE"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;account_type&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="DIRTY"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;dirty&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="SOURCE_ID"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;sourceid&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+<field name="VERSION"
+ type="java.lang.String"
+ transient="false"
+ volatile="false"
+ value="&quot;version&quot;"
+ static="true"
+ final="true"
+ deprecated="not deprecated"
+ visibility="public"
+>
+</field>
+</interface>
 <class name="ContactsContract.SyncState"
  extends="java.lang.Object"
  abstract="false"
diff --git a/core/java/android/provider/ContactsContract.java b/core/java/android/provider/ContactsContract.java
index 5ea6539..48e0cd3 100644
--- a/core/java/android/provider/ContactsContract.java
+++ b/core/java/android/provider/ContactsContract.java
@@ -129,7 +129,7 @@
      * these columns are private to the sync adapter. Other clients of the API
      * should not attempt to either read or write this column.
      */
-    private interface BaseSyncColumns {
+    protected interface BaseSyncColumns {
 
         /** Generic column for use by sync adapters. */
         public static final String SYNC1 = "sync1";
@@ -145,7 +145,7 @@
      * Columns that appear when each row of a table belongs to a specific
      * account, including sync information that an account may need.
      */
-    private interface SyncColumns extends BaseSyncColumns {
+    protected interface SyncColumns extends BaseSyncColumns {
         /**
          * The name of the account instance to which this row belongs, which when paired with
          * {@link #ACCOUNT_TYPE} identifies a specific account.
@@ -181,7 +181,7 @@
         public static final String DIRTY = "dirty";
     }
 
-    private interface ContactOptionsColumns {
+    protected interface ContactOptionsColumns {
         /**
          * The number of times a contact has been contacted
          * <P>Type: INTEGER</P>
@@ -214,7 +214,7 @@
         public static final String SEND_TO_VOICEMAIL = "send_to_voicemail";
     }
 
-    private interface ContactsColumns {
+    protected interface ContactsColumns {
         /**
          * The display name for the contact.
          * <P>Type: TEXT</P>
@@ -247,7 +247,7 @@
         public static final String LOOKUP_KEY = "lookup";
     }
 
-    private interface ContactStatusColumns {
+    protected interface ContactStatusColumns {
         /**
          * Contact presence status. See {@link StatusUpdates} for individual status
          * definitions.
@@ -540,7 +540,7 @@
         }
     }
 
-    private interface RawContactsColumns {
+    protected interface RawContactsColumns {
         /**
          * A reference to the {@link android.provider.ContactsContract.Contacts#_ID} that this
          * data belongs to.
@@ -699,7 +699,7 @@
         }
     }
 
-    private interface StatusColumns extends Im.CommonPresenceColumns {
+    protected interface StatusColumns extends Im.CommonPresenceColumns {
         /**
          * Contact's latest presence level.
          * <P>Type: INTEGER (one of the values below)</P>
@@ -739,7 +739,7 @@
         public static final String STATUS_ICON = "status_icon";
     }
 
-    private interface DataColumns {
+    protected interface DataColumns {
         /**
          * The package name to use when creating {@link Resources} objects for
          * this data row. This value is only designed for use when building user
@@ -826,7 +826,7 @@
     /**
      * Combines all columns returned by {@link Data} table queries.
      */
-    private interface DataColumnsWithJoins extends BaseColumns, DataColumns, StatusColumns,
+    protected interface DataColumnsWithJoins extends BaseColumns, DataColumns, StatusColumns,
         RawContactsColumns, ContactsColumns, ContactOptionsColumns, ContactStatusColumns {
 
     }
@@ -938,7 +938,7 @@
         public static final String DATA_ID = "data_id";
     }
 
-    private interface PhoneLookupColumns {
+    protected interface PhoneLookupColumns {
         /**
          * The phone number as the user entered it.
          * <P>Type: TEXT</P>
@@ -986,7 +986,7 @@
      * Additional data mixed in with {@link StatusColumns} to link
      * back to specific {@link ContactsContract.Data#_ID} entries.
      */
-    private interface PresenceColumns {
+    protected interface PresenceColumns {
 
         /**
          * Reference to the {@link Data#_ID} entry that owns this presence.
@@ -1123,7 +1123,7 @@
         /**
          * Columns common across the specific types.
          */
-        private interface CommonColumns extends BaseTypes {
+        protected interface CommonColumns extends BaseTypes {
             /**
              * The data for the contact method.
              * <P>Type: TEXT</P>
@@ -1930,7 +1930,7 @@
         }
     }
 
-    private interface GroupsColumns {
+    protected interface GroupsColumns {
         /**
          * The display title of this group.
          * <p>