Merge "Expose data_usage_stat table in ContactsContract" into jb-mr2-dev
diff --git a/api/current.txt b/api/current.txt
index 5ab97ea..d1a904a 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -18274,7 +18274,7 @@
field public static final java.lang.String SYNC4 = "data_sync4";
}
- protected static abstract interface ContactsContract.DataColumnsWithJoins implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns android.provider.ContactsContract.DataColumns android.provider.ContactsContract.RawContactsColumns android.provider.ContactsContract.StatusColumns {
+ protected static abstract interface ContactsContract.DataColumnsWithJoins implements android.provider.BaseColumns android.provider.ContactsContract.ContactNameColumns android.provider.ContactsContract.ContactOptionsColumns android.provider.ContactsContract.ContactStatusColumns android.provider.ContactsContract.ContactsColumns android.provider.ContactsContract.DataColumns android.provider.ContactsContract.DataUsageStatColumns android.provider.ContactsContract.RawContactsColumns android.provider.ContactsContract.StatusColumns {
}
public static final class ContactsContract.DataUsageFeedback {
@@ -18287,6 +18287,15 @@
field public static final java.lang.String USAGE_TYPE_SHORT_TEXT = "short_text";
}
+ protected static abstract interface ContactsContract.DataUsageStatColumns {
+ field public static final java.lang.String LAST_TIME_USED = "last_time_used";
+ field public static final java.lang.String TIMES_USED = "times_used";
+ field public static final java.lang.String USAGE_TYPE = "usage_type";
+ field public static final int USAGE_TYPE_CALL = 0; // 0x0
+ field public static final int USAGE_TYPE_LONG_TEXT = 1; // 0x1
+ field public static final int USAGE_TYPE_SHORT_TEXT = 2; // 0x2
+ }
+
public static final class ContactsContract.Directory implements android.provider.BaseColumns {
method public static void notifyDirectoryChange(android.content.ContentResolver);
field public static final java.lang.String ACCOUNT_NAME = "accountName";
diff --git a/core/java/android/provider/ContactsContract.java b/core/java/android/provider/ContactsContract.java
index a4c4411..90bcf1c 100644
--- a/core/java/android/provider/ContactsContract.java
+++ b/core/java/android/provider/ContactsContract.java
@@ -3793,13 +3793,63 @@
}
/**
+ * Columns in the Data_Usage_Stat table
+ */
+ protected interface DataUsageStatColumns {
+ /** What the referenced {@link Data} was used for.
+ * @see DataUsageStatColumns#USAGE_TYPE_CALL
+ * @see DataUsageStatColumns#USAGE_TYPE_LONG_TEXT
+ * @see DataUsageStatColumns#USAGE_TYPE_SHORT_TEXT
+ */
+ public static final String USAGE_TYPE = "usage_type";
+
+ /** The last time (in milliseconds) this {@link Data} was used. */
+ public static final String LAST_TIME_USED = "last_time_used";
+
+ /** The number of times the referenced {@link Data} has been used for the purpose described
+ * in {@link DataUsageStatColumns#USAGE_TYPE}.
+ */
+ public static final String TIMES_USED = "times_used";
+
+ /**
+ * Integer value for USAGE_TYPE.
+ * This type of usage refers to voice interaction, which includes phone calls, voice chat,
+ * and video chat.
+ *
+ * @see DataUsageFeedback#USAGE_TYPE
+ * @see DataUsageStatColumns#USAGE_TYPE
+ */
+ public static final int USAGE_TYPE_CALL = 0;
+
+ /**
+ * Integer value for USAGE_TYPE.
+ * This type of usage refers to text interaction involving longer messages, which includes
+ * email.
+ *
+ * @see DataUsageFeedback#USAGE_TYPE
+ * @see DataUsageStatColumns#USAGE_TYPE
+ */
+ public static final int USAGE_TYPE_LONG_TEXT = 1;
+
+ /**
+ * Integer value for USAGE_TYPE.
+ * This type of usage for text interaction involving shorter messages, which includes SMS
+ * and text chat with email addresses.
+ *
+ * @see DataUsageFeedback#USAGE_TYPE
+ * @see DataUsageStatColumns#USAGE_TYPE
+ */
+ public static final int USAGE_TYPE_SHORT_TEXT = 2;
+ }
+
+ /**
* Combines all columns returned by {@link ContactsContract.Data} table queries.
*
* @see ContactsContract.Data
*/
protected interface DataColumnsWithJoins extends BaseColumns, DataColumns, StatusColumns,
RawContactsColumns, ContactsColumns, ContactNameColumns, ContactOptionsColumns,
- ContactStatusColumns {
+ ContactStatusColumns, DataUsageStatColumns {
}
/**