summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSvet Ganov <svetoslavganov@google.com>2015-06-22 11:13:04 -0700
committerSvet Ganov <svetoslavganov@google.com>2015-06-22 13:20:55 -0700
commita2991da0d671adf511ccb884cf25bf1241303f92 (patch)
tree213eceb089e954e4a5e5d6d70feca7002f97ca23
parent3ac465a7d830a973096b4f69ef4531f09dcdf07c (diff)
downloadframeworks_base-a2991da0d671adf511ccb884cf25bf1241303f92.tar.gz
frameworks_base-a2991da0d671adf511ccb884cf25bf1241303f92.tar.bz2
frameworks_base-a2991da0d671adf511ccb884cf25bf1241303f92.zip
Remove not needed contacts related perissions.
Removing the read/write profile/social stream permissions as they are not needed anymore. These permissions are for accessing data nested in the conacts provider which is already guaded by the read/write contacts runtime permissions. The removed permissions would be in the contacts group which means they would not provide more protection compated to read/write contacts. Also removing the permissions voids the need for app op support for legacy apps. Removed deprecated APIs for social streams as these were deprecated and will go away in the next release. We want apps targeting M to not be able to compile if still suing these APIs to help with migration. Change-Id: I26ed9055847af7f92c78eb0f4ac8f9f1aa616fcd
-rw-r--r--api/current.txt63
-rw-r--r--api/removed.txt58
-rw-r--r--api/system-current.txt63
-rw-r--r--api/system-removed.txt58
-rw-r--r--core/java/android/provider/ContactsContract.java21
-rw-r--r--core/res/AndroidManifest.xml50
-rw-r--r--core/res/res/values/strings.xml39
-rw-r--r--docs/html/about/versions/android-4.0.3.jd14
-rw-r--r--docs/html/about/versions/android-4.0.jd10
-rw-r--r--docs/html/guide/topics/providers/contacts-provider.jd86
-rw-r--r--services/core/java/com/android/server/LockSettingsService.java15
11 files changed, 199 insertions, 278 deletions
diff --git a/api/current.txt b/api/current.txt
index 02b278604e2..d6664bfcea2 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -105,9 +105,7 @@ package android {
field public static final deprecated java.lang.String READ_INPUT_STATE = "android.permission.READ_INPUT_STATE";
field public static final java.lang.String READ_LOGS = "android.permission.READ_LOGS";
field public static final java.lang.String READ_PHONE_STATE = "android.permission.READ_PHONE_STATE";
- field public static final deprecated java.lang.String READ_PROFILE = "android.permission.READ_PROFILE";
field public static final java.lang.String READ_SMS = "android.permission.READ_SMS";
- field public static final deprecated java.lang.String READ_SOCIAL_STREAM = "android.permission.READ_SOCIAL_STREAM";
field public static final java.lang.String READ_SYNC_SETTINGS = "android.permission.READ_SYNC_SETTINGS";
field public static final java.lang.String READ_SYNC_STATS = "android.permission.READ_SYNC_STATS";
field public static final java.lang.String READ_USER_DICTIONARY = "android.permission.READ_USER_DICTIONARY";
@@ -152,10 +150,8 @@ package android {
field public static final java.lang.String WRITE_CONTACTS = "android.permission.WRITE_CONTACTS";
field public static final java.lang.String WRITE_EXTERNAL_STORAGE = "android.permission.WRITE_EXTERNAL_STORAGE";
field public static final java.lang.String WRITE_GSERVICES = "android.permission.WRITE_GSERVICES";
- field public static final deprecated java.lang.String WRITE_PROFILE = "android.permission.WRITE_PROFILE";
field public static final java.lang.String WRITE_SECURE_SETTINGS = "android.permission.WRITE_SECURE_SETTINGS";
field public static final java.lang.String WRITE_SETTINGS = "android.permission.WRITE_SETTINGS";
- field public static final deprecated java.lang.String WRITE_SOCIAL_STREAM = "android.permission.WRITE_SOCIAL_STREAM";
field public static final java.lang.String WRITE_SYNC_SETTINGS = "android.permission.WRITE_SYNC_SETTINGS";
field public static final java.lang.String WRITE_USER_DICTIONARY = "android.permission.WRITE_USER_DICTIONARY";
field public static final java.lang.String WRITE_VOICEMAIL = "com.android.voicemail.permission.WRITE_VOICEMAIL";
@@ -172,7 +168,6 @@ package android {
field public static final java.lang.String PHONE = "android.permission-group.PHONE";
field public static final java.lang.String SENSORS = "android.permission-group.SENSORS";
field public static final java.lang.String SMS = "android.permission-group.SMS";
- field public static final java.lang.String SOCIAL_INFO = "android.permission-group.SOCIAL_INFO";
field public static final java.lang.String STORAGE = "android.permission-group.STORAGE";
field public static final java.lang.String USER_DICTIONARY = "android.permission-group.USER_DICTIONARY";
}
@@ -25580,10 +25575,6 @@ package android.provider {
field public static final java.lang.String PHOTO_FILE_ID = "data14";
}
- public static final deprecated class ContactsContract.Contacts.StreamItems implements android.provider.ContactsContract.StreamItemsColumns {
- field public static final deprecated java.lang.String CONTENT_DIRECTORY = "stream_items";
- }
-
protected static abstract interface ContactsContract.ContactsColumns {
field public static final java.lang.String CONTACT_LAST_UPDATED_TIMESTAMP = "contact_last_updated_timestamp";
field public static final java.lang.String DISPLAY_NAME = "display_name";
@@ -25899,10 +25890,6 @@ package android.provider {
field public static final java.lang.String DATA_ID = "data_id";
}
- public static final deprecated class ContactsContract.RawContacts.StreamItems implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemsColumns {
- field public static final deprecated java.lang.String CONTENT_DIRECTORY = "stream_items";
- }
-
protected static abstract interface ContactsContract.RawContactsColumns {
field public static final java.lang.String ACCOUNT_TYPE_AND_DATA_SET = "account_type_and_data_set";
field public static final java.lang.String AGGREGATION_MODE = "aggregation_mode";
@@ -25973,56 +25960,6 @@ package android.provider {
field public static final android.net.Uri PROFILE_CONTENT_URI;
}
- public static final deprecated class ContactsContract.StreamItemPhotos implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemPhotosColumns {
- field public static final deprecated java.lang.String PHOTO = "photo";
- }
-
- protected static abstract deprecated interface ContactsContract.StreamItemPhotosColumns {
- field public static final deprecated java.lang.String PHOTO_FILE_ID = "photo_file_id";
- field public static final deprecated java.lang.String PHOTO_URI = "photo_uri";
- field public static final deprecated java.lang.String SORT_INDEX = "sort_index";
- field public static final deprecated java.lang.String STREAM_ITEM_ID = "stream_item_id";
- field public static final deprecated java.lang.String SYNC1 = "stream_item_photo_sync1";
- field public static final deprecated java.lang.String SYNC2 = "stream_item_photo_sync2";
- field public static final deprecated java.lang.String SYNC3 = "stream_item_photo_sync3";
- field public static final deprecated java.lang.String SYNC4 = "stream_item_photo_sync4";
- }
-
- public static final deprecated class ContactsContract.StreamItems implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemsColumns {
- field public static final deprecated java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/stream_item";
- field public static final deprecated android.net.Uri CONTENT_LIMIT_URI;
- field public static final deprecated android.net.Uri CONTENT_PHOTO_URI;
- field public static final deprecated java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item";
- field public static final deprecated android.net.Uri CONTENT_URI;
- field public static final deprecated java.lang.String MAX_ITEMS = "max_items";
- }
-
- public static final deprecated class ContactsContract.StreamItems.StreamItemPhotos implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemPhotosColumns {
- field public static final deprecated java.lang.String CONTENT_DIRECTORY = "photo";
- field public static final deprecated java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/stream_item_photo";
- field public static final deprecated java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item_photo";
- }
-
- protected static abstract deprecated interface ContactsContract.StreamItemsColumns {
- field public static final deprecated java.lang.String ACCOUNT_NAME = "account_name";
- field public static final deprecated java.lang.String ACCOUNT_TYPE = "account_type";
- field public static final deprecated java.lang.String COMMENTS = "comments";
- field public static final deprecated java.lang.String CONTACT_ID = "contact_id";
- field public static final deprecated java.lang.String CONTACT_LOOKUP_KEY = "contact_lookup";
- field public static final deprecated java.lang.String DATA_SET = "data_set";
- field public static final deprecated java.lang.String RAW_CONTACT_ID = "raw_contact_id";
- field public static final deprecated java.lang.String RAW_CONTACT_SOURCE_ID = "raw_contact_source_id";
- field public static final deprecated java.lang.String RES_ICON = "icon";
- field public static final deprecated java.lang.String RES_LABEL = "label";
- field public static final deprecated java.lang.String RES_PACKAGE = "res_package";
- field public static final deprecated java.lang.String SYNC1 = "stream_item_sync1";
- field public static final deprecated java.lang.String SYNC2 = "stream_item_sync2";
- field public static final deprecated java.lang.String SYNC3 = "stream_item_sync3";
- field public static final deprecated java.lang.String SYNC4 = "stream_item_sync4";
- field public static final deprecated java.lang.String TEXT = "text";
- field public static final deprecated java.lang.String TIMESTAMP = "timestamp";
- }
-
protected static abstract interface ContactsContract.SyncColumns implements android.provider.ContactsContract.BaseSyncColumns {
field public static final java.lang.String ACCOUNT_NAME = "account_name";
field public static final java.lang.String ACCOUNT_TYPE = "account_type";
diff --git a/api/removed.txt b/api/removed.txt
index 2e6c6854a09..7fc927bcffa 100644
--- a/api/removed.txt
+++ b/api/removed.txt
@@ -117,6 +117,64 @@ package android.provider {
field public static final deprecated java.lang.String URL = "url";
}
+ public static final deprecated class ContactsContract.Contacts.StreamItems {
+ field public static final deprecated java.lang.String CONTENT_DIRECTORY = "stream_items";
+ }
+
+ public static final deprecated class ContactsContract.RawContacts.StreamItems implements android.provider.BaseColumns {
+ field public static final deprecated java.lang.String CONTENT_DIRECTORY = "stream_items";
+ }
+
+ public static final deprecated class ContactsContract.StreamItemPhotos implements android.provider.BaseColumns {
+ field public static final deprecated java.lang.String PHOTO = "photo";
+ }
+
+ protected static abstract deprecated interface ContactsContract.StreamItemPhotosColumns {
+ field public static final deprecated java.lang.String PHOTO_FILE_ID = "photo_file_id";
+ field public static final deprecated java.lang.String PHOTO_URI = "photo_uri";
+ field public static final deprecated java.lang.String SORT_INDEX = "sort_index";
+ field public static final deprecated java.lang.String STREAM_ITEM_ID = "stream_item_id";
+ field public static final deprecated java.lang.String SYNC1 = "stream_item_photo_sync1";
+ field public static final deprecated java.lang.String SYNC2 = "stream_item_photo_sync2";
+ field public static final deprecated java.lang.String SYNC3 = "stream_item_photo_sync3";
+ field public static final deprecated java.lang.String SYNC4 = "stream_item_photo_sync4";
+ }
+
+ public static final deprecated class ContactsContract.StreamItems implements android.provider.BaseColumns {
+ field public static final deprecated java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/stream_item";
+ field public static final deprecated android.net.Uri CONTENT_LIMIT_URI;
+ field public static final deprecated android.net.Uri CONTENT_PHOTO_URI;
+ field public static final deprecated java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item";
+ field public static final deprecated android.net.Uri CONTENT_URI;
+ field public static final deprecated java.lang.String MAX_ITEMS = "max_items";
+ }
+
+ public static final deprecated class ContactsContract.StreamItems.StreamItemPhotos implements android.provider.BaseColumns {
+ field public static final deprecated java.lang.String CONTENT_DIRECTORY = "photo";
+ field public static final deprecated java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/stream_item_photo";
+ field public static final deprecated java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item_photo";
+ }
+
+ protected static abstract deprecated interface ContactsContract.StreamItemsColumns {
+ field public static final deprecated java.lang.String ACCOUNT_NAME = "account_name";
+ field public static final deprecated java.lang.String ACCOUNT_TYPE = "account_type";
+ field public static final deprecated java.lang.String COMMENTS = "comments";
+ field public static final deprecated java.lang.String CONTACT_ID = "contact_id";
+ field public static final deprecated java.lang.String CONTACT_LOOKUP_KEY = "contact_lookup";
+ field public static final deprecated java.lang.String DATA_SET = "data_set";
+ field public static final deprecated java.lang.String RAW_CONTACT_ID = "raw_contact_id";
+ field public static final deprecated java.lang.String RAW_CONTACT_SOURCE_ID = "raw_contact_source_id";
+ field public static final deprecated java.lang.String RES_ICON = "icon";
+ field public static final deprecated java.lang.String RES_LABEL = "label";
+ field public static final deprecated java.lang.String RES_PACKAGE = "res_package";
+ field public static final deprecated java.lang.String SYNC1 = "stream_item_sync1";
+ field public static final deprecated java.lang.String SYNC2 = "stream_item_sync2";
+ field public static final deprecated java.lang.String SYNC3 = "stream_item_sync3";
+ field public static final deprecated java.lang.String SYNC4 = "stream_item_sync4";
+ field public static final deprecated java.lang.String TEXT = "text";
+ field public static final deprecated java.lang.String TIMESTAMP = "timestamp";
+ }
+
public static final class Settings.System extends android.provider.Settings.NameValueTable {
field public static final java.lang.String APPEND_FOR_LAST_AUDIBLE = "_last_audible";
field public static final java.lang.String VOLUME_ALARM = "volume_alarm";
diff --git a/api/system-current.txt b/api/system-current.txt
index dd232c380da..e4ef68cd2d3 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -156,10 +156,8 @@ package android {
field public static final java.lang.String READ_NETWORK_USAGE_HISTORY = "android.permission.READ_NETWORK_USAGE_HISTORY";
field public static final java.lang.String READ_PHONE_STATE = "android.permission.READ_PHONE_STATE";
field public static final java.lang.String READ_PRIVILEGED_PHONE_STATE = "android.permission.READ_PRIVILEGED_PHONE_STATE";
- field public static final deprecated java.lang.String READ_PROFILE = "android.permission.READ_PROFILE";
field public static final java.lang.String READ_SEARCH_INDEXABLES = "android.permission.READ_SEARCH_INDEXABLES";
field public static final java.lang.String READ_SMS = "android.permission.READ_SMS";
- field public static final deprecated java.lang.String READ_SOCIAL_STREAM = "android.permission.READ_SOCIAL_STREAM";
field public static final java.lang.String READ_SYNC_SETTINGS = "android.permission.READ_SYNC_SETTINGS";
field public static final java.lang.String READ_SYNC_STATS = "android.permission.READ_SYNC_STATS";
field public static final java.lang.String READ_USER_DICTIONARY = "android.permission.READ_USER_DICTIONARY";
@@ -227,10 +225,8 @@ package android {
field public static final java.lang.String WRITE_EXTERNAL_STORAGE = "android.permission.WRITE_EXTERNAL_STORAGE";
field public static final java.lang.String WRITE_GSERVICES = "android.permission.WRITE_GSERVICES";
field public static final java.lang.String WRITE_MEDIA_STORAGE = "android.permission.WRITE_MEDIA_STORAGE";
- field public static final deprecated java.lang.String WRITE_PROFILE = "android.permission.WRITE_PROFILE";
field public static final java.lang.String WRITE_SECURE_SETTINGS = "android.permission.WRITE_SECURE_SETTINGS";
field public static final java.lang.String WRITE_SETTINGS = "android.permission.WRITE_SETTINGS";
- field public static final deprecated java.lang.String WRITE_SOCIAL_STREAM = "android.permission.WRITE_SOCIAL_STREAM";
field public static final java.lang.String WRITE_SYNC_SETTINGS = "android.permission.WRITE_SYNC_SETTINGS";
field public static final java.lang.String WRITE_USER_DICTIONARY = "android.permission.WRITE_USER_DICTIONARY";
field public static final java.lang.String WRITE_VOICEMAIL = "com.android.voicemail.permission.WRITE_VOICEMAIL";
@@ -247,7 +243,6 @@ package android {
field public static final java.lang.String PHONE = "android.permission-group.PHONE";
field public static final java.lang.String SENSORS = "android.permission-group.SENSORS";
field public static final java.lang.String SMS = "android.permission-group.SMS";
- field public static final java.lang.String SOCIAL_INFO = "android.permission-group.SOCIAL_INFO";
field public static final java.lang.String STORAGE = "android.permission-group.STORAGE";
field public static final java.lang.String USER_DICTIONARY = "android.permission-group.USER_DICTIONARY";
}
@@ -27525,10 +27520,6 @@ package android.provider {
field public static final java.lang.String PHOTO_FILE_ID = "data14";
}
- public static final deprecated class ContactsContract.Contacts.StreamItems implements android.provider.ContactsContract.StreamItemsColumns {
- field public static final deprecated java.lang.String CONTENT_DIRECTORY = "stream_items";
- }
-
protected static abstract interface ContactsContract.ContactsColumns {
field public static final java.lang.String CONTACT_LAST_UPDATED_TIMESTAMP = "contact_last_updated_timestamp";
field public static final java.lang.String DISPLAY_NAME = "display_name";
@@ -27844,10 +27835,6 @@ package android.provider {
field public static final java.lang.String DATA_ID = "data_id";
}
- public static final deprecated class ContactsContract.RawContacts.StreamItems implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemsColumns {
- field public static final deprecated java.lang.String CONTENT_DIRECTORY = "stream_items";
- }
-
protected static abstract interface ContactsContract.RawContactsColumns {
field public static final java.lang.String ACCOUNT_TYPE_AND_DATA_SET = "account_type_and_data_set";
field public static final java.lang.String AGGREGATION_MODE = "aggregation_mode";
@@ -27918,56 +27905,6 @@ package android.provider {
field public static final android.net.Uri PROFILE_CONTENT_URI;
}
- public static final deprecated class ContactsContract.StreamItemPhotos implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemPhotosColumns {
- field public static final deprecated java.lang.String PHOTO = "photo";
- }
-
- protected static abstract deprecated interface ContactsContract.StreamItemPhotosColumns {
- field public static final deprecated java.lang.String PHOTO_FILE_ID = "photo_file_id";
- field public static final deprecated java.lang.String PHOTO_URI = "photo_uri";
- field public static final deprecated java.lang.String SORT_INDEX = "sort_index";
- field public static final deprecated java.lang.String STREAM_ITEM_ID = "stream_item_id";
- field public static final deprecated java.lang.String SYNC1 = "stream_item_photo_sync1";
- field public static final deprecated java.lang.String SYNC2 = "stream_item_photo_sync2";
- field public static final deprecated java.lang.String SYNC3 = "stream_item_photo_sync3";
- field public static final deprecated java.lang.String SYNC4 = "stream_item_photo_sync4";
- }
-
- public static final deprecated class ContactsContract.StreamItems implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemsColumns {
- field public static final deprecated java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/stream_item";
- field public static final deprecated android.net.Uri CONTENT_LIMIT_URI;
- field public static final deprecated android.net.Uri CONTENT_PHOTO_URI;
- field public static final deprecated java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item";
- field public static final deprecated android.net.Uri CONTENT_URI;
- field public static final deprecated java.lang.String MAX_ITEMS = "max_items";
- }
-
- public static final deprecated class ContactsContract.StreamItems.StreamItemPhotos implements android.provider.BaseColumns android.provider.ContactsContract.StreamItemPhotosColumns {
- field public static final deprecated java.lang.String CONTENT_DIRECTORY = "photo";
- field public static final deprecated java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/stream_item_photo";
- field public static final deprecated java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item_photo";
- }
-
- protected static abstract deprecated interface ContactsContract.StreamItemsColumns {
- field public static final deprecated java.lang.String ACCOUNT_NAME = "account_name";
- field public static final deprecated java.lang.String ACCOUNT_TYPE = "account_type";
- field public static final deprecated java.lang.String COMMENTS = "comments";
- field public static final deprecated java.lang.String CONTACT_ID = "contact_id";
- field public static final deprecated java.lang.String CONTACT_LOOKUP_KEY = "contact_lookup";
- field public static final deprecated java.lang.String DATA_SET = "data_set";
- field public static final deprecated java.lang.String RAW_CONTACT_ID = "raw_contact_id";
- field public static final deprecated java.lang.String RAW_CONTACT_SOURCE_ID = "raw_contact_source_id";
- field public static final deprecated java.lang.String RES_ICON = "icon";
- field public static final deprecated java.lang.String RES_LABEL = "label";
- field public static final deprecated java.lang.String RES_PACKAGE = "res_package";
- field public static final deprecated java.lang.String SYNC1 = "stream_item_sync1";
- field public static final deprecated java.lang.String SYNC2 = "stream_item_sync2";
- field public static final deprecated java.lang.String SYNC3 = "stream_item_sync3";
- field public static final deprecated java.lang.String SYNC4 = "stream_item_sync4";
- field public static final deprecated java.lang.String TEXT = "text";
- field public static final deprecated java.lang.String TIMESTAMP = "timestamp";
- }
-
protected static abstract interface ContactsContract.SyncColumns implements android.provider.ContactsContract.BaseSyncColumns {
field public static final java.lang.String ACCOUNT_NAME = "account_name";
field public static final java.lang.String ACCOUNT_TYPE = "account_type";
diff --git a/api/system-removed.txt b/api/system-removed.txt
index 2e6c6854a09..7fc927bcffa 100644
--- a/api/system-removed.txt
+++ b/api/system-removed.txt
@@ -117,6 +117,64 @@ package android.provider {
field public static final deprecated java.lang.String URL = "url";
}
+ public static final deprecated class ContactsContract.Contacts.StreamItems {
+ field public static final deprecated java.lang.String CONTENT_DIRECTORY = "stream_items";
+ }
+
+ public static final deprecated class ContactsContract.RawContacts.StreamItems implements android.provider.BaseColumns {
+ field public static final deprecated java.lang.String CONTENT_DIRECTORY = "stream_items";
+ }
+
+ public static final deprecated class ContactsContract.StreamItemPhotos implements android.provider.BaseColumns {
+ field public static final deprecated java.lang.String PHOTO = "photo";
+ }
+
+ protected static abstract deprecated interface ContactsContract.StreamItemPhotosColumns {
+ field public static final deprecated java.lang.String PHOTO_FILE_ID = "photo_file_id";
+ field public static final deprecated java.lang.String PHOTO_URI = "photo_uri";
+ field public static final deprecated java.lang.String SORT_INDEX = "sort_index";
+ field public static final deprecated java.lang.String STREAM_ITEM_ID = "stream_item_id";
+ field public static final deprecated java.lang.String SYNC1 = "stream_item_photo_sync1";
+ field public static final deprecated java.lang.String SYNC2 = "stream_item_photo_sync2";
+ field public static final deprecated java.lang.String SYNC3 = "stream_item_photo_sync3";
+ field public static final deprecated java.lang.String SYNC4 = "stream_item_photo_sync4";
+ }
+
+ public static final deprecated class ContactsContract.StreamItems implements android.provider.BaseColumns {
+ field public static final deprecated java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/stream_item";
+ field public static final deprecated android.net.Uri CONTENT_LIMIT_URI;
+ field public static final deprecated android.net.Uri CONTENT_PHOTO_URI;
+ field public static final deprecated java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item";
+ field public static final deprecated android.net.Uri CONTENT_URI;
+ field public static final deprecated java.lang.String MAX_ITEMS = "max_items";
+ }
+
+ public static final deprecated class ContactsContract.StreamItems.StreamItemPhotos implements android.provider.BaseColumns {
+ field public static final deprecated java.lang.String CONTENT_DIRECTORY = "photo";
+ field public static final deprecated java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/stream_item_photo";
+ field public static final deprecated java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/stream_item_photo";
+ }
+
+ protected static abstract deprecated interface ContactsContract.StreamItemsColumns {
+ field public static final deprecated java.lang.String ACCOUNT_NAME = "account_name";
+ field public static final deprecated java.lang.String ACCOUNT_TYPE = "account_type";
+ field public static final deprecated java.lang.String COMMENTS = "comments";
+ field public static final deprecated java.lang.String CONTACT_ID = "contact_id";
+ field public static final deprecated java.lang.String CONTACT_LOOKUP_KEY = "contact_lookup";
+ field public static final deprecated java.lang.String DATA_SET = "data_set";
+ field public static final deprecated java.lang.String RAW_CONTACT_ID = "raw_contact_id";
+ field public static final deprecated java.lang.String RAW_CONTACT_SOURCE_ID = "raw_contact_source_id";
+ field public static final deprecated java.lang.String RES_ICON = "icon";
+ field public static final deprecated java.lang.String RES_LABEL = "label";
+ field public static final deprecated java.lang.String RES_PACKAGE = "res_package";
+ field public static final deprecated java.lang.String SYNC1 = "stream_item_sync1";
+ field public static final deprecated java.lang.String SYNC2 = "stream_item_sync2";
+ field public static final deprecated java.lang.String SYNC3 = "stream_item_sync3";
+ field public static final deprecated java.lang.String SYNC4 = "stream_item_sync4";
+ field public static final deprecated java.lang.String TEXT = "text";
+ field public static final deprecated java.lang.String TIMESTAMP = "timestamp";
+ }
+
public static final class Settings.System extends android.provider.Settings.NameValueTable {
field public static final java.lang.String APPEND_FOR_LAST_AUDIBLE = "_last_audible";
field public static final java.lang.String VOLUME_ALARM = "volume_alarm";
diff --git a/core/java/android/provider/ContactsContract.java b/core/java/android/provider/ContactsContract.java
index aebe7f10d52..8ce1cbf43f7 100644
--- a/core/java/android/provider/ContactsContract.java
+++ b/core/java/android/provider/ContactsContract.java
@@ -1743,6 +1743,9 @@ public final class ContactsContract {
*
* @deprecated - Do not use. This will not be supported in the future. In the future,
* cursors returned from related queries will be empty.
+ *
+ * @hide
+ * @removed
*/
@Deprecated
public static final class StreamItems implements StreamItemsColumns {
@@ -2831,6 +2834,9 @@ public final class ContactsContract {
*
* @deprecated - Do not use. This will not be supported in the future. In the future,
* cursors returned from related queries will be empty.
+ *
+ * @hide
+ * @removed
*/
@Deprecated
public static final class StreamItems implements BaseColumns, StreamItemsColumns {
@@ -3267,6 +3273,9 @@ public final class ContactsContract {
*
* @deprecated - Do not use. This will not be supported in the future. In the future,
* cursors returned from related queries will be empty.
+ *
+ * @hide
+ * @removed
*/
@Deprecated
public static final class StreamItems implements BaseColumns, StreamItemsColumns {
@@ -3365,6 +3374,9 @@ public final class ContactsContract {
*
* @deprecated - Do not use. This will not be supported in the future. In the future,
* cursors returned from related queries will be empty.
+ *
+ * @hide
+ * @removed
*/
@Deprecated
public static final class StreamItemPhotos
@@ -3415,6 +3427,9 @@ public final class ContactsContract {
* @see ContactsContract.StreamItems
* @deprecated - Do not use. This will not be supported in the future. In the future,
* cursors returned from related queries will be empty.
+ *
+ * @hide
+ * @removed
*/
@Deprecated
protected interface StreamItemsColumns {
@@ -3805,6 +3820,9 @@ public final class ContactsContract {
*
* @deprecated - Do not use. This will not be supported in the future. In the future,
* cursors returned from related queries will be empty.
+ *
+ * @hide
+ * @removed
*/
@Deprecated
public static final class StreamItemPhotos implements BaseColumns, StreamItemPhotosColumns {
@@ -3843,6 +3861,9 @@ public final class ContactsContract {
* @see ContactsContract.StreamItemPhotos
* @deprecated - Do not use. This will not be supported in the future. In the future,
* cursors returned from related queries will be empty.
+ *
+ * @hide
+ * @removed
*/
@Deprecated
protected interface StreamItemPhotosColumns {
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index 5b40d3092ee..6145ca1c729 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -349,20 +349,6 @@
android:description="@string/permdesc_writeContacts"
android:protectionLevel="dangerous" />
- <!-- @deprecated No longer enforced. This was last enforced in API version 22. -->
- <permission android:name="android.permission.READ_PROFILE"
- android:permissionGroup="android.permission-group.CONTACTS"
- android:label="@string/permlab_readProfile"
- android:description="@string/permdesc_readProfile"
- android:protectionLevel="dangerous" />
-
- <!-- @deprecated No longer enforced. This was last enforced in API version 22. -->
- <permission android:name="android.permission.WRITE_PROFILE"
- android:permissionGroup="android.permission-group.CONTACTS"
- android:label="@string/permlab_writeProfile"
- android:description="@string/permdesc_writeProfile"
- android:protectionLevel="dangerous" />
-
<!-- ====================================================================== -->
<!-- Permissions for accessing user's calendar -->
<!-- ====================================================================== -->
@@ -511,42 +497,6 @@
android:description="@string/permdesc_sdcardWrite"
android:protectionLevel="dangerous" />
- <!-- =============================================================== -->
- <!-- Permissions for accessing social info -->
- <!-- =============================================================== -->
- <eat-comment />
-
- <!-- Used for permissions that provide access to the user's social connections,
- such as contacts, call logs, social stream, etc. This includes
- both reading and writing of this data (which should generally be
- expressed as two distinct permissions). -->
-
- <permission-group android:name="android.permission-group.SOCIAL_INFO"
- android:label="@string/permgrouplab_socialInfo"
- android:icon="@drawable/perm_group_social_info"
- android:description="@string/permgroupdesc_socialInfo"
- android:permissionGroupFlags="personalInfo"
- android:priority="1200" />
-
- <!-- Allows an application to read from the user's social stream.
- @deprecated This functionality will be unsupported in the future; cursors returned
- will be empty. Please do not use. -->
- <permission android:name="android.permission.READ_SOCIAL_STREAM"
- android:permissionGroup="android.permission-group.SOCIAL_INFO"
- android:protectionLevel="dangerous"
- android:label="@string/permlab_readSocialStream"
- android:description="@string/permdesc_readSocialStream" />
-
- <!-- Allows an application to write (but not read) the user's
- social stream data.
- @deprecated This functionality will be unsupported in the future; cursors returned
- will be empty. Please do not use. -->
- <permission android:name="android.permission.WRITE_SOCIAL_STREAM"
- android:permissionGroup="android.permission-group.SOCIAL_INFO"
- android:protectionLevel="dangerous"
- android:label="@string/permlab_writeSocialStream"
- android:description="@string/permdesc_writeSocialStream" />
-
<!-- ====================================================================== -->
<!-- Permissions for accessing the device location -->
<!-- ====================================================================== -->
diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
index ea0d349ccd7..0e5df50d4e1 100644
--- a/core/res/res/values/strings.xml
+++ b/core/res/res/values/strings.xml
@@ -554,11 +554,6 @@
<string name="permgroupdesc_location">access this device\'s location</string>
<!-- Title of a category of application permissions, listed so the user can choose whether they want to allow the application to do this. -->
- <string name="permgrouplab_socialInfo">Your social information</string>
- <!-- Description of a category of application permissions, listed so the user can choose whether they want to allow the application to do this. -->
- <string name="permgroupdesc_socialInfo">Direct access to information about your contacts and social connections.</string>
-
- <!-- Title of a category of application permissions, listed so the user can choose whether they want to allow the application to do this. -->
<string name="permgrouplab_calendar">Calendar</string>
<!-- Description of a category of application permissions, listed so the user can choose whether they want to allow the application to do this. -->
<string name="permgroupdesc_calendar">access your calendar</string>
@@ -901,23 +896,6 @@
<string name="permdesc_writeCallLog" product="default">Allows the app to modify your phone\'s call log, including data about incoming and outgoing calls.
Malicious apps may use this to erase or modify your call log.</string>
-
- <!-- Title of the read profile permission, listed so the user can decide whether to allow the application to read the user's personal profile data. [CHAR LIMIT=30] -->
- <string name="permlab_readProfile">read your own contact card</string>
- <!-- Description of the read profile permission, listed so the user can decide whether to allow the application to read the user's personal profile data. [CHAR LIMIT=NONE] -->
- <string name="permdesc_readProfile" product="default">Allows the app to read
- personal profile information stored on your device, such as your name and
- contact information. This means the app can identify you and may send your
- profile information to others.</string>
-
- <!-- Title of the write profile permission, listed so the user can decide whether to allow the application to write to the user's personal profile data. [CHAR LIMIT=30] -->
- <string name="permlab_writeProfile">modify your own contact card</string>
- <!-- Description of the write profile permission, listed so the user can decide whether to allow the application to write to the user's personal profile data. [CHAR LIMIT=NONE] -->
- <string name="permdesc_writeProfile" product="default">Allows the app to
- change or add to personal profile information stored on your device, such
- as your name and contact information. This means the app can identify you
- and may send your profile information to others.</string>
-
<!-- Title of the body sensors permission, listed so the user can decide whether to allow the application to access body sensor data. [CHAR LIMIT=30] -->
<string name="permlab_bodySensors">body sensors (like heart rate monitors)
</string>
@@ -925,23 +903,6 @@
<string name="permdesc_bodySensors" product="default">Allows the app to access data from sensors
that monitor your physical condition, such as your heart rate.</string>
- <!-- Title of the read social stream permission, listed so the user can decide whether to allow the application to read information from the user's social stream. [CHAR LIMIT=30] -->
- <string name="permlab_readSocialStream" product="default">read your social stream</string>
- <string name="permdesc_readSocialStream" product="default">Allows the app
- to access and sync social updates from you and your friends. Be careful
- when sharing information -- this allows the app to read communications
- between you and your friends on social networks, regardless of
- confidentiality. Note: this permission may not be enforced on all social
- networks.</string>
-
- <!-- Title of the write social stream permission, listed so the user can decide whether to allow the application to write information to the user's social stream. [CHAR LIMIT=30] -->
- <string name="permlab_writeSocialStream" product="default">write to your social stream</string>
- <string name="permdesc_writeSocialStream" product="default">Allows the app to
- display social updates from your friends. Be careful when sharing
- information -- this allows the app to produce messages that may appear to
- come from a friend. Note: this permission may not be enforced on all social
- networks.</string>
-
<!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
<string name="permlab_readCalendar">read calendar events plus confidential information</string>
<!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
diff --git a/docs/html/about/versions/android-4.0.3.jd b/docs/html/about/versions/android-4.0.3.jd
index 5fa8547eed5..4c2ccb96bfd 100644
--- a/docs/html/about/versions/android-4.0.3.jd
+++ b/docs/html/about/versions/android-4.0.3.jd
@@ -78,19 +78,19 @@ can now sync that data with each of the user’s contacts, providing items in a
stream along with photos for each.</p>
<p>The database table that contains an individual contact’s social stream is
-defined by {@link android.provider.ContactsContract.StreamItems}, the Uri for
+defined by android.provider.ContactsContract.StreamItems, the Uri for
which is nested within the {@link android.provider.ContactsContract.RawContacts}
directory to which the stream items belong. Each social stream table includes
several columns for metadata about each stream item, such as an icon
representing the source (an avatar), a label for the item, the primary text
content, comments about the item (such as responses from other people), and
more. Photos associated with a stream are stored in another table, defined by
-{@link android.provider.ContactsContract.StreamItemPhotos}, which is available
-as a sub-directory of the {@link android.provider.ContactsContract.StreamItems}
+android.provider.ContactsContract.StreamItemPhotos, which is available
+as a sub-directory of the android.provider.ContactsContract.StreamItems
Uri.</p>
-<p>See {@link android.provider.ContactsContract.StreamItems} and
-{@link android.provider.ContactsContract.StreamItemPhotos} for more information.</p>
+<p>See android.provider.ContactsContract.StreamItems and
+android.provider.ContactsContract.StreamItemPhotos for more information.</p>
<p>To read or write social stream items for a contact, an application must
request permission from the user by declaring <code>&lt;uses-permission
@@ -272,8 +272,8 @@ let you check and manage video stabilization for a {@link android.hardware.Camer
<p>The following are new permissions:</p>
<ul>
-<li>{@link android.Manifest.permission#READ_SOCIAL_STREAM} and
-{@link android.Manifest.permission#WRITE_SOCIAL_STREAM}: Allow a sync
+<li>android.Manifest.permission#READ_SOCIAL_STREAM and
+android.Manifest.permission#WRITE_SOCIAL_STREAM: Allow a sync
adapter to read and write social stream data to a contact in the shared
Contacts Provider.</li>
</ul>
diff --git a/docs/html/about/versions/android-4.0.jd b/docs/html/about/versions/android-4.0.jd
index 6c4ccb4c495..cc1d1c70d9d 100644
--- a/docs/html/about/versions/android-4.0.jd
+++ b/docs/html/about/versions/android-4.0.jd
@@ -108,9 +108,9 @@ android.provider.ContactsContract.RawContacts} Uri; instead, you must add a prof
the table at {@link android.provider.ContactsContract.Profile#CONTENT_RAW_CONTACTS_URI}. Raw
contacts in this table are then aggregated into the single user-visible profile labeled "Me".</p>
-<p>Adding a new raw contact for the profile requires the {@link
-android.Manifest.permission#WRITE_PROFILE} permission. Likewise, in order to read from the profile
-table, you must request the {@link android.Manifest.permission#READ_PROFILE} permission. However,
+<p>Adding a new raw contact for the profile requires the
+android.Manifest.permission#WRITE_PROFILE permission. Likewise, in order to read from the profile
+table, you must request the android.Manifest.permission#READ_PROFILE permission. However,
most apps should not need to read the user profile, even when contributing data to the
profile. Reading the user profile is a sensitive permission and you should expect users to be
skeptical of apps that request it.</p>
@@ -1638,9 +1638,9 @@ messages to the device.</li>
android.service.textservice.SpellCheckerService} must require this permission for itself.</li>
<li>{@link android.Manifest.permission#BIND_VPN_SERVICE}: A service that implements {@link
android.net.VpnService} must require this permission for itself.</li>
-<li>{@link android.Manifest.permission#READ_PROFILE}: Provides read access to the {@link
+<li>android.Manifest.permission#READ_PROFILE: Provides read access to the {@link
android.provider.ContactsContract.Profile} provider.</li>
-<li>{@link android.Manifest.permission#WRITE_PROFILE}: Provides write access to the {@link
+<li>android.Manifest.permission#WRITE_PROFILE: Provides write access to the {@link
android.provider.ContactsContract.Profile} provider.</li>
</ul>
diff --git a/docs/html/guide/topics/providers/contacts-provider.jd b/docs/html/guide/topics/providers/contacts-provider.jd
index e3b998a7677..2b145585ab8 100644
--- a/docs/html/guide/topics/providers/contacts-provider.jd
+++ b/docs/html/guide/topics/providers/contacts-provider.jd
@@ -57,7 +57,7 @@ page.title=Contacts Provider
<li>{@link android.provider.ContactsContract.Contacts}</li>
<li>{@link android.provider.ContactsContract.RawContacts}</li>
<li>{@link android.provider.ContactsContract.Data}</li>
- <li>{@link android.provider.ContactsContract.StreamItems}</li>
+ <li>android.provider.ContactsContract.StreamItems</li>
</ol>
<h2>Related Samples</h2>
<ol>
@@ -606,13 +606,13 @@ page.title=Contacts Provider
Access to the user profile requires special permissions. In addition to the
{@link android.Manifest.permission#READ_CONTACTS} and
{@link android.Manifest.permission#WRITE_CONTACTS} permissions needed to read and write, access
- to the user profile requires the {@link android.Manifest.permission#READ_PROFILE} and
- {@link android.Manifest.permission#WRITE_PROFILE} permissions for read and write access,
+ to the user profile requires the android.Manifest.permission#READ_PROFILE and
+ android.Manifest.permission#WRITE_PROFILE permissions for read and write access,
respectively.
</p>
<p>
Remember that you should consider a user's profile to be sensitive. The permission
- {@link android.Manifest.permission#READ_PROFILE} allows you to access the device user's
+ android.Manifest.permission#READ_PROFILE allows you to access the device user's
personally-identifying data. Make sure to tell the user why
you need user profile access permissions in the description of your application.
</p>
@@ -1826,8 +1826,8 @@ child elements that provide specific data to the
</dl>
<h2 id="SocialStream">Social Stream Data</h2>
<p>
- The {@link android.provider.ContactsContract.StreamItems} and
- {@link android.provider.ContactsContract.StreamItemPhotos} tables
+ The android.provider.ContactsContract.StreamItems and
+ android.provider.ContactsContract.StreamItemPhotos tables
manage incoming data from social networks. You can write a sync adapter that adds stream data
from your own network to these tables, or you can read stream data from these tables and
display it in your own application, or both. With these features, your social networking
@@ -1836,7 +1836,7 @@ child elements that provide specific data to the
<h3 id="StreamText">Social stream text</h3>
<p>
Stream items are always associated with a raw contact. The
- {@link android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID} links to the
+ android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID links to the
<code>_ID</code> value for the raw contact. The account type and account name of the raw
contact are also stored in the stream item row.
</p>
@@ -1845,14 +1845,14 @@ child elements that provide specific data to the
</p>
<dl>
<dt>
- {@link android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE}
+ android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_TYPE
</dt>
<dd>
<strong>Required.</strong> The user's account type for the raw contact associated with this
stream item. Remember to set this value when you insert a stream item.
</dd>
<dt>
- {@link android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME}
+ android.provider.ContactsContract.StreamItemsColumns#ACCOUNT_NAME
</dt>
<dd>
<strong>Required.</strong> The user's account name for the raw contact associated with this
@@ -1866,30 +1866,30 @@ child elements that provide specific data to the
insert a stream item:
<ul>
<li>
- {@link android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID}: The
- {@link android.provider.BaseColumns#_ID} value of the contact that this stream
+ android.provider.ContactsContract.StreamItemsColumns#CONTACT_ID: The
+ android.provider.BaseColumns#_ID value of the contact that this stream
item is associated with.
</li>
<li>
- {@link android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY}: The
- {@link android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY} value of the
+ android.provider.ContactsContract.StreamItemsColumns#CONTACT_LOOKUP_KEY: The
+ android.provider.ContactsContract.ContactsColumns#LOOKUP_KEY value of the
contact this stream item is associated with.
</li>
<li>
- {@link android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID}: The
- {@link android.provider.BaseColumns#_ID} value of the raw contact that this stream
+ android.provider.ContactsContract.StreamItemsColumns#RAW_CONTACT_ID: The
+ android.provider.BaseColumns#_ID value of the raw contact that this stream
item is associated with.
</li>
</ul>
</dd>
<dt>
- {@link android.provider.ContactsContract.StreamItemsColumns#COMMENTS}
+ android.provider.ContactsContract.StreamItemsColumns#COMMENTS
</dt>
<dd>
Optional. Stores summary information that you can display at the beginning of a stream item.
</dd>
<dt>
- {@link android.provider.ContactsContract.StreamItemsColumns#TEXT}
+ android.provider.ContactsContract.StreamItemsColumns#TEXT
</dt>
<dd>
The text of the stream item, either the content that was posted by the source of the item,
@@ -1899,7 +1899,7 @@ child elements that provide specific data to the
ellipsize long content, but it will try to avoid breaking tags.
</dd>
<dt>
- {@link android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}
+ android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP
</dt>
<dd>
A text string containing the time the stream item was inserted or updated, in the form
@@ -1910,42 +1910,42 @@ child elements that provide specific data to the
</dl>
<p>
To display identifying information for your stream items, use the
- {@link android.provider.ContactsContract.StreamItemsColumns#RES_ICON},
- {@link android.provider.ContactsContract.StreamItemsColumns#RES_LABEL}, and
- {@link android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE} to link to resources
+ android.provider.ContactsContract.StreamItemsColumns#RES_ICON,
+ android.provider.ContactsContract.StreamItemsColumns#RES_LABEL, and
+ android.provider.ContactsContract.StreamItemsColumns#RES_PACKAGE to link to resources
in your application.
</p>
<p>
- The {@link android.provider.ContactsContract.StreamItems} table also contains the columns
- {@link android.provider.ContactsContract.StreamItemsColumns#SYNC1} through
- {@link android.provider.ContactsContract.StreamItemsColumns#SYNC4} for the exclusive use of
+ The android.provider.ContactsContract.StreamItems table also contains the columns
+ android.provider.ContactsContract.StreamItemsColumns#SYNC1 through
+ android.provider.ContactsContract.StreamItemsColumns#SYNC4 for the exclusive use of
sync adapters.
</p>
<h3 id="StreamPhotos">Social stream photos</h3>
<p>
- The {@link android.provider.ContactsContract.StreamItemPhotos} table stores photos associated
+ The android.provider.ContactsContract.StreamItemPhotos table stores photos associated
with a stream item. The table's
- {@link android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID} column
+ android.provider.ContactsContract.StreamItemPhotosColumns#STREAM_ITEM_ID column
links to values in the {@link android.provider.BaseColumns#_ID} column of
- {@link android.provider.ContactsContract.StreamItems} table. Photo references are stored in the
+ android.provider.ContactsContract.StreamItems table. Photo references are stored in the
table in these columns:
</p>
<dl>
<dt>
- {@link android.provider.ContactsContract.StreamItemPhotos#PHOTO} column (a BLOB).
+ android.provider.ContactsContract.StreamItemPhotos#PHOTO column (a BLOB).
</dt>
<dd>
A binary representation of the photo, resized by the provider for storage and display.
This column is available for backwards compatibility with previous versions of the Contacts
Provider that used it for storing photos. However, in the current version
you should not use this column to store photos. Instead, use
- either {@link android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID} or
- {@link android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI} (both of
+ either android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID or
+ android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI (both of
which are described in the following points) to store photos in a file. This column now
contains a thumbnail of the photo, which is available for reading.
</dd>
<dt>
- {@link android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID}
+ android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_FILE_ID
</dt>
<dd>
A numeric identifier of a photo for a raw contact. Append this value to the constant
@@ -1955,7 +1955,7 @@ child elements that provide specific data to the
openAssetFileDescriptor()} to get a handle to the photo file.
</dd>
<dt>
- {@link android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI}
+ android.provider.ContactsContract.StreamItemPhotosColumns#PHOTO_URI
</dt>
<dd>
A content URI pointing directly to the photo file for the photo represented by this row.
@@ -1970,27 +1970,27 @@ child elements that provide specific data to the
<ul>
<li>
These tables require additional access permissions. To read from them, your application
- must have the permission {@link android.Manifest.permission#READ_SOCIAL_STREAM}. To
+ must have the permission android.Manifest.permission#READ_SOCIAL_STREAM. To
modify them, your application must have the permission
- {@link android.Manifest.permission#WRITE_SOCIAL_STREAM}.
+ android.Manifest.permission#WRITE_SOCIAL_STREAM.
</li>
<li>
- For the {@link android.provider.ContactsContract.StreamItems} table, the number of rows
+ For the android.provider.ContactsContract.StreamItems table, the number of rows
stored for each raw contact is limited. Once this limit is reached,
the Contacts Provider makes space for new stream item rows by automatically deleting
the rows having the oldest
- {@link android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP}. To get the
+ android.provider.ContactsContract.StreamItemsColumns#TIMESTAMP. To get the
limit, issue a query to the content URI
- {@link android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI}. You can leave
+ android.provider.ContactsContract.StreamItems#CONTENT_LIMIT_URI. You can leave
all the arguments other than the content URI set to <code>null</code>. The query
returns a Cursor containing a single row, with the single column
- {@link android.provider.ContactsContract.StreamItems#MAX_ITEMS}.
+ android.provider.ContactsContract.StreamItems#MAX_ITEMS.
</li>
</ul>
<p>
- The class {@link android.provider.ContactsContract.StreamItems.StreamItemPhotos} defines a
- sub-table of {@link android.provider.ContactsContract.StreamItemPhotos} containing the photo
+ The class android.provider.ContactsContract.StreamItems.StreamItemPhotos defines a
+ sub-table of android.provider.ContactsContract.StreamItemPhotos containing the photo
rows for a single stream item.
</p>
<h3 id="SocialStreamInteraction">Social stream interactions</h3>
@@ -2003,8 +2003,8 @@ child elements that provide specific data to the
<li>
By syncing your social networking service to the Contacts Provider with a sync
adapter, you can retrieve recent activity for a user's contacts and store it in
- the {@link android.provider.ContactsContract.StreamItems} and
- {@link android.provider.ContactsContract.StreamItemPhotos} tables for later use.
+ the android.provider.ContactsContract.StreamItems and
+ android.provider.ContactsContract.StreamItemPhotos tables for later use.
</li>
<li>
Besides regular synchronization, you can trigger your sync adapter to retrieve
@@ -2356,6 +2356,6 @@ child elements that provide specific data to the
</p>
<p>
Social stream data for a person may also include photos. These are stored in the
- {@link android.provider.ContactsContract.StreamItemPhotos} table, which is described in more
+ android.provider.ContactsContract.StreamItemPhotos table, which is described in more
detail in the section <a href="#StreamPhotos">Social stream photos</a>.
</p>
diff --git a/services/core/java/com/android/server/LockSettingsService.java b/services/core/java/com/android/server/LockSettingsService.java
index 5436ce020ab..c5ea8bc1dbc 100644
--- a/services/core/java/com/android/server/LockSettingsService.java
+++ b/services/core/java/com/android/server/LockSettingsService.java
@@ -27,11 +27,10 @@ import android.content.pm.PackageManager;
import android.content.pm.UserInfo;
import static android.Manifest.permission.ACCESS_KEYGUARD_SECURE_STORAGE;
import static android.content.Context.USER_SERVICE;
-import static android.Manifest.permission.READ_PROFILE;
+import static android.Manifest.permission.READ_CONTACTS;
import android.database.sqlite.SQLiteDatabase;
import android.os.Binder;
import android.os.IBinder;
-import android.os.Process;
import android.os.RemoteException;
import android.os.storage.IMountService;
import android.os.ServiceManager;
@@ -264,12 +263,12 @@ public class LockSettingsService extends ILockSettings.Stub {
private final void checkReadPermission(String requestedKey, int userId) {
final int callingUid = Binder.getCallingUid();
- for (int i = 0; i < READ_PROFILE_PROTECTED_SETTINGS.length; i++) {
- String key = READ_PROFILE_PROTECTED_SETTINGS[i];
- if (key.equals(requestedKey) && mContext.checkCallingOrSelfPermission(READ_PROFILE)
+ for (int i = 0; i < READ_CONTACTS_PROTECTED_SETTINGS.length; i++) {
+ String key = READ_CONTACTS_PROTECTED_SETTINGS[i];
+ if (key.equals(requestedKey) && mContext.checkCallingOrSelfPermission(READ_CONTACTS)
!= PackageManager.PERMISSION_GRANTED) {
throw new SecurityException("uid=" + callingUid
- + " needs permission " + READ_PROFILE + " to read "
+ + " needs permission " + READ_CONTACTS + " to read "
+ requestedKey + " for user " + userId);
}
}
@@ -722,8 +721,8 @@ public class LockSettingsService extends ILockSettings.Stub {
Secure.LOCK_PATTERN_TACTILE_FEEDBACK_ENABLED
};
- // Reading these settings needs the profile permission
- private static final String[] READ_PROFILE_PROTECTED_SETTINGS = new String[] {
+ // Reading these settings needs the contacts permission
+ private static final String[] READ_CONTACTS_PROTECTED_SETTINGS = new String[] {
Secure.LOCK_SCREEN_OWNER_INFO_ENABLED,
Secure.LOCK_SCREEN_OWNER_INFO
};