diff options
author | Dianne Hackborn <hackbod@google.com> | 2009-11-11 20:12:41 -0800 |
---|---|---|
committer | Dianne Hackborn <hackbod@google.com> | 2009-11-11 20:13:53 -0800 |
commit | 86a72dacbea3331cd5423c1f2f6ecbfae535e57c (patch) | |
tree | 0fab52282b83a7bd36f2316165c510f2b39ed909 /core/java | |
parent | 532d56034532809da7691059742371c1b4d0656c (diff) | |
download | frameworks_base-86a72dacbea3331cd5423c1f2f6ecbfae535e57c.zip frameworks_base-86a72dacbea3331cd5423c1f2f6ecbfae535e57c.tar.gz frameworks_base-86a72dacbea3331cd5423c1f2f6ecbfae535e57c.tar.bz2 |
Fix issue #2256270: Package manager sends bad broadcasts when components change
Also reworks this intent protocol a little bit to be much more efficient, only
requiring one broadcast per package.
Change-Id: I580de4843ebd3c7f2e6df7295a2f80d2937cef7c
Diffstat (limited to 'core/java')
-rw-r--r-- | core/java/android/content/Intent.java | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java index c676a5b..398f211 100644 --- a/core/java/android/content/Intent.java +++ b/core/java/android/content/Intent.java @@ -1275,12 +1275,15 @@ public class Intent implements Parcelable { @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION) public static final String ACTION_PACKAGE_REMOVED = "android.intent.action.PACKAGE_REMOVED"; /** - * Broadcast Action: An existing application package has been changed (e.g. a component has been - * enabled or disabled. The data contains the name of the package. + * Broadcast Action: An existing application package has been changed (e.g. + * a component has been enabled or disabled). The data contains the name of + * the package. * <ul> * <li> {@link #EXTRA_UID} containing the integer uid assigned to the package. - * <li> {@link #EXTRA_CHANGED_COMPONENT_NAME} containing the class name of the changed component. - * <li> {@link #EXTRA_DONT_KILL_APP} containing boolean field to override the default action of restarting the application. + * <li> {@link #EXTRA_CHANGED_COMPONENT_NAME_LIST} containing the class name + * of the changed components. + * <li> {@link #EXTRA_DONT_KILL_APP} containing boolean field to override the + * default action of restarting the application. * </ul> * * <p class="note">This is a protected intent that can only be sent @@ -2101,14 +2104,20 @@ public class Intent implements Parcelable { "android.intent.extra.remote_intent_token"; /** - * Used as an int extra field in {@link android.content.Intent#ACTION_PACKAGE_CHANGED} - * intent to supply the name of the component that changed. - * + * @Deprecated See {@link #EXTRA_CHANGED_COMPONENT_NAME_LIST}; this field + * will contain only the first name in the list. */ public static final String EXTRA_CHANGED_COMPONENT_NAME = "android.intent.extra.changed_component_name"; /** + * This field is part of {@link android.content.Intent#ACTION_PACKAGE_CHANGED} + * and contains a string array of all of the components that have changed. + */ + public static final String EXTRA_CHANGED_COMPONENT_NAME_LIST = + "android.intent.extra.changed_component_name_list"; + + /** * @hide * Magic extra system code can use when binding, to give a label for * who it is that has bound to a service. This is an integer giving |