Loading core/api/current.txt +30 −3 Original line number Diff line number Diff line Loading @@ -11248,6 +11248,33 @@ package android.content.pm { field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.Attribution> CREATOR; } public final class Capability implements android.os.Parcelable { method public int describeContents(); method @NonNull public String getName(); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.Capability> CREATOR; } public static final class Capability.Builder { ctor public Capability.Builder(@NonNull String); method @NonNull public android.content.pm.Capability build(); } public final class CapabilityParams implements android.os.Parcelable { method public int describeContents(); method @NonNull public java.util.List<java.lang.String> getAliases(); method @NonNull public String getName(); method @NonNull public String getValue(); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.CapabilityParams> CREATOR; } public static final class CapabilityParams.Builder { ctor public CapabilityParams.Builder(@NonNull String, @NonNull String); method @NonNull public android.content.pm.CapabilityParams.Builder addAlias(@NonNull String); method @NonNull public android.content.pm.CapabilityParams build(); } public final class ChangedPackages implements android.os.Parcelable { ctor public ChangedPackages(int, @NonNull java.util.List<java.lang.String>); method public int describeContents(); Loading Loading @@ -12309,7 +12336,8 @@ package android.content.pm { method @NonNull public static android.content.pm.ShortcutInfo createFromGenericDocument(@NonNull android.content.Context, @NonNull android.app.appsearch.GenericDocument); method public int describeContents(); method @Nullable public android.content.ComponentName getActivity(); method @NonNull public java.util.List<java.lang.String> getCapabilityParameterValues(@NonNull String, @NonNull String); method @NonNull public java.util.List<android.content.pm.Capability> getCapabilities(); method @NonNull public java.util.List<android.content.pm.CapabilityParams> getCapabilityParams(@NonNull android.content.pm.Capability); method @Nullable public java.util.Set<java.lang.String> getCategories(); method @Nullable public CharSequence getDisabledMessage(); method public int getDisabledReason(); Loading @@ -12324,7 +12352,6 @@ package android.content.pm { method public int getRank(); method @Nullable public CharSequence getShortLabel(); method public android.os.UserHandle getUserHandle(); method public boolean hasCapability(@NonNull String); method public boolean hasKeyFieldsOnly(); method public boolean isCached(); method public boolean isDeclaredInManifest(); Loading @@ -12349,7 +12376,7 @@ package android.content.pm { public static class ShortcutInfo.Builder { ctor public ShortcutInfo.Builder(android.content.Context, String); method @NonNull public android.content.pm.ShortcutInfo.Builder addCapabilityBinding(@NonNull String, @Nullable String, @Nullable java.util.List<java.lang.String>); method @NonNull public android.content.pm.ShortcutInfo.Builder addCapabilityBinding(@NonNull android.content.pm.Capability, @Nullable android.content.pm.CapabilityParams); method @NonNull public android.content.pm.ShortcutInfo build(); method @NonNull public android.content.pm.ShortcutInfo.Builder setActivity(@NonNull android.content.ComponentName); method @NonNull public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>); core/java/android/content/pm/AppSearchShortcutInfo.java +1 −1 Original line number Diff line number Diff line Loading @@ -349,7 +349,7 @@ public class AppSearchShortcutInfo extends GenericDocument { .setDisabledReason(shortcutInfo.getDisabledReason()) .setPersons(shortcutInfo.getPersons()) .setLocusId(shortcutInfo.getLocusId()) .setCapabilityBindings(shortcutInfo.getCapabilityBindings()) .setCapabilityBindings(shortcutInfo.getCapabilityBindingsInternal()) .setTtlMillis(SHORTCUT_TTL) .build(); } Loading core/java/android/content/pm/Capability.aidl 0 → 100644 +18 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm; parcelable Capability; No newline at end of file core/java/android/content/pm/Capability.java 0 → 100644 +143 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm; import android.annotation.NonNull; import android.os.Parcel; import android.os.Parcelable; import java.util.Objects; /** * Represents a capability that can be performed by an app, also known as App Action. * Capabilities can be associated with a {@link ShortcutInfo}. * * @see ShortcutInfo.Builder#addCapabilityBinding(Capability, CapabilityParams) */ public final class Capability implements Parcelable { @NonNull private final String mName; /** * Constructor. * @param name Name of the capability, usually maps to a built-in intent, * e.g. actions.intent.GET_MESSAGE. Note the character "/" is not permitted. * @throws IllegalArgumentException If specified capability name contains the character "/". * * @hide */ Capability(@NonNull final String name) { Objects.requireNonNull(name); if (name.contains("/")) { throw new IllegalArgumentException("'/' is not permitted in the capability name"); } mName = name; } /** * Copy constructor. * * @hide */ Capability(@NonNull final Capability orig) { this(orig.mName); } private Capability(@NonNull final Builder builder) { this(builder.mName); } private Capability(@NonNull final Parcel in) { mName = in.readString(); } /** * Returns the name of the capability. e.g. actions.intent.GET_MESSAGE. */ @NonNull public String getName() { return mName; } @Override public boolean equals(Object obj) { if (!(obj instanceof Capability)) { return false; } return mName.equals(((Capability) obj).mName); } @Override public int hashCode() { return mName.hashCode(); } @Override public void writeToParcel(@NonNull Parcel dest, int flags) { dest.writeString(mName); } @Override public int describeContents() { return 0; } @NonNull public static final Parcelable.Creator<Capability> CREATOR = new Parcelable.Creator<Capability>() { @Override public Capability[] newArray(int size) { return new Capability[size]; } @Override public Capability createFromParcel(@NonNull Parcel in) { return new Capability(in); } }; /** * Builder class for {@link Capability}. */ public static final class Builder { @NonNull private final String mName; /** * Constructor. * @param name Name of the capability, usually maps to a built-in intent, * e.g. actions.intent.GET_MESSAGE. Note the character "/" is not permitted. * @throws IllegalArgumentException If specified capability name contains the character "/". */ public Builder(@NonNull final String name) { Objects.requireNonNull(name); if (name.contains("/")) { throw new IllegalArgumentException("'/' is not permitted in the capability name"); } mName = name; } /** * Creates an instance of {@link Capability} */ @NonNull public Capability build() { return new Capability(this); } } } core/java/android/content/pm/CapabilityParams.aidl 0 → 100644 +18 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm; parcelable CapabilityParams; Loading
core/api/current.txt +30 −3 Original line number Diff line number Diff line Loading @@ -11248,6 +11248,33 @@ package android.content.pm { field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.Attribution> CREATOR; } public final class Capability implements android.os.Parcelable { method public int describeContents(); method @NonNull public String getName(); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.Capability> CREATOR; } public static final class Capability.Builder { ctor public Capability.Builder(@NonNull String); method @NonNull public android.content.pm.Capability build(); } public final class CapabilityParams implements android.os.Parcelable { method public int describeContents(); method @NonNull public java.util.List<java.lang.String> getAliases(); method @NonNull public String getName(); method @NonNull public String getValue(); method public void writeToParcel(@NonNull android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.CapabilityParams> CREATOR; } public static final class CapabilityParams.Builder { ctor public CapabilityParams.Builder(@NonNull String, @NonNull String); method @NonNull public android.content.pm.CapabilityParams.Builder addAlias(@NonNull String); method @NonNull public android.content.pm.CapabilityParams build(); } public final class ChangedPackages implements android.os.Parcelable { ctor public ChangedPackages(int, @NonNull java.util.List<java.lang.String>); method public int describeContents(); Loading Loading @@ -12309,7 +12336,8 @@ package android.content.pm { method @NonNull public static android.content.pm.ShortcutInfo createFromGenericDocument(@NonNull android.content.Context, @NonNull android.app.appsearch.GenericDocument); method public int describeContents(); method @Nullable public android.content.ComponentName getActivity(); method @NonNull public java.util.List<java.lang.String> getCapabilityParameterValues(@NonNull String, @NonNull String); method @NonNull public java.util.List<android.content.pm.Capability> getCapabilities(); method @NonNull public java.util.List<android.content.pm.CapabilityParams> getCapabilityParams(@NonNull android.content.pm.Capability); method @Nullable public java.util.Set<java.lang.String> getCategories(); method @Nullable public CharSequence getDisabledMessage(); method public int getDisabledReason(); Loading @@ -12324,7 +12352,6 @@ package android.content.pm { method public int getRank(); method @Nullable public CharSequence getShortLabel(); method public android.os.UserHandle getUserHandle(); method public boolean hasCapability(@NonNull String); method public boolean hasKeyFieldsOnly(); method public boolean isCached(); method public boolean isDeclaredInManifest(); Loading @@ -12349,7 +12376,7 @@ package android.content.pm { public static class ShortcutInfo.Builder { ctor public ShortcutInfo.Builder(android.content.Context, String); method @NonNull public android.content.pm.ShortcutInfo.Builder addCapabilityBinding(@NonNull String, @Nullable String, @Nullable java.util.List<java.lang.String>); method @NonNull public android.content.pm.ShortcutInfo.Builder addCapabilityBinding(@NonNull android.content.pm.Capability, @Nullable android.content.pm.CapabilityParams); method @NonNull public android.content.pm.ShortcutInfo build(); method @NonNull public android.content.pm.ShortcutInfo.Builder setActivity(@NonNull android.content.ComponentName); method @NonNull public android.content.pm.ShortcutInfo.Builder setCategories(java.util.Set<java.lang.String>);
core/java/android/content/pm/AppSearchShortcutInfo.java +1 −1 Original line number Diff line number Diff line Loading @@ -349,7 +349,7 @@ public class AppSearchShortcutInfo extends GenericDocument { .setDisabledReason(shortcutInfo.getDisabledReason()) .setPersons(shortcutInfo.getPersons()) .setLocusId(shortcutInfo.getLocusId()) .setCapabilityBindings(shortcutInfo.getCapabilityBindings()) .setCapabilityBindings(shortcutInfo.getCapabilityBindingsInternal()) .setTtlMillis(SHORTCUT_TTL) .build(); } Loading
core/java/android/content/pm/Capability.aidl 0 → 100644 +18 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm; parcelable Capability; No newline at end of file
core/java/android/content/pm/Capability.java 0 → 100644 +143 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm; import android.annotation.NonNull; import android.os.Parcel; import android.os.Parcelable; import java.util.Objects; /** * Represents a capability that can be performed by an app, also known as App Action. * Capabilities can be associated with a {@link ShortcutInfo}. * * @see ShortcutInfo.Builder#addCapabilityBinding(Capability, CapabilityParams) */ public final class Capability implements Parcelable { @NonNull private final String mName; /** * Constructor. * @param name Name of the capability, usually maps to a built-in intent, * e.g. actions.intent.GET_MESSAGE. Note the character "/" is not permitted. * @throws IllegalArgumentException If specified capability name contains the character "/". * * @hide */ Capability(@NonNull final String name) { Objects.requireNonNull(name); if (name.contains("/")) { throw new IllegalArgumentException("'/' is not permitted in the capability name"); } mName = name; } /** * Copy constructor. * * @hide */ Capability(@NonNull final Capability orig) { this(orig.mName); } private Capability(@NonNull final Builder builder) { this(builder.mName); } private Capability(@NonNull final Parcel in) { mName = in.readString(); } /** * Returns the name of the capability. e.g. actions.intent.GET_MESSAGE. */ @NonNull public String getName() { return mName; } @Override public boolean equals(Object obj) { if (!(obj instanceof Capability)) { return false; } return mName.equals(((Capability) obj).mName); } @Override public int hashCode() { return mName.hashCode(); } @Override public void writeToParcel(@NonNull Parcel dest, int flags) { dest.writeString(mName); } @Override public int describeContents() { return 0; } @NonNull public static final Parcelable.Creator<Capability> CREATOR = new Parcelable.Creator<Capability>() { @Override public Capability[] newArray(int size) { return new Capability[size]; } @Override public Capability createFromParcel(@NonNull Parcel in) { return new Capability(in); } }; /** * Builder class for {@link Capability}. */ public static final class Builder { @NonNull private final String mName; /** * Constructor. * @param name Name of the capability, usually maps to a built-in intent, * e.g. actions.intent.GET_MESSAGE. Note the character "/" is not permitted. * @throws IllegalArgumentException If specified capability name contains the character "/". */ public Builder(@NonNull final String name) { Objects.requireNonNull(name); if (name.contains("/")) { throw new IllegalArgumentException("'/' is not permitted in the capability name"); } mName = name; } /** * Creates an instance of {@link Capability} */ @NonNull public Capability build() { return new Capability(this); } } }
core/java/android/content/pm/CapabilityParams.aidl 0 → 100644 +18 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm; parcelable CapabilityParams;