diff --git a/core/api/current.txt b/core/api/current.txt index 96df429f26d01..b8a4ca41aedc5 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -1072,6 +1072,7 @@ package android { field public static final int panelTextAppearance = 16842850; // 0x1010062 field public static final int parentActivityName = 16843687; // 0x10103a7 field @Deprecated public static final int password = 16843100; // 0x101015c + field public static final int passwordsActivity = 16844351; // 0x101063f field public static final int path = 16842794; // 0x101002a field public static final int pathAdvancedPattern = 16844320; // 0x1010620 field public static final int pathData = 16843781; // 0x1010405 diff --git a/core/java/android/service/autofill/AutofillServiceInfo.java b/core/java/android/service/autofill/AutofillServiceInfo.java index e30529dbe6f80..4c8ee598f5129 100644 --- a/core/java/android/service/autofill/AutofillServiceInfo.java +++ b/core/java/android/service/autofill/AutofillServiceInfo.java @@ -81,6 +81,8 @@ public final class AutofillServiceInfo { @Nullable private final String mSettingsActivity; + @Nullable + private final String mPasswordsActivity; @Nullable private final ArrayMap mCompatibilityPackages; @@ -118,12 +120,14 @@ public final class AutofillServiceInfo { AutofillService.SERVICE_META_DATA); if (parser == null) { mSettingsActivity = null; + mPasswordsActivity = null; mCompatibilityPackages = null; mInlineSuggestionsEnabled = false; return; } String settingsActivity = null; + String passwordsActivity = null; ArrayMap compatibilityPackages = null; boolean inlineSuggestionsEnabled = false; // false by default. @@ -144,6 +148,8 @@ public final class AutofillServiceInfo { com.android.internal.R.styleable.AutofillService); settingsActivity = afsAttributes.getString( R.styleable.AutofillService_settingsActivity); + passwordsActivity = afsAttributes.getString( + R.styleable.AutofillService_passwordsActivity); inlineSuggestionsEnabled = afsAttributes.getBoolean( R.styleable.AutofillService_supportsInlineSuggestions, false); } finally { @@ -160,6 +166,7 @@ public final class AutofillServiceInfo { } mSettingsActivity = settingsActivity; + mPasswordsActivity = passwordsActivity; mCompatibilityPackages = compatibilityPackages; mInlineSuggestionsEnabled = inlineSuggestionsEnabled; } @@ -226,6 +233,7 @@ public final class AutofillServiceInfo { return compatibilityPackages; } + @NonNull public ServiceInfo getServiceInfo() { return mServiceInfo; } @@ -235,6 +243,12 @@ public final class AutofillServiceInfo { return mSettingsActivity; } + @Nullable + public String getPasswordsActivity() { + return mPasswordsActivity; + } + + @Nullable public ArrayMap getCompatibilityPackages() { return mCompatibilityPackages; } @@ -273,6 +287,7 @@ public final class AutofillServiceInfo { builder.append(getClass().getSimpleName()); builder.append("[").append(mServiceInfo); builder.append(", settings:").append(mSettingsActivity); + builder.append(", passwords activity:").append(mPasswordsActivity); builder.append(", hasCompatPckgs:").append(mCompatibilityPackages != null && !mCompatibilityPackages.isEmpty()).append("]"); builder.append(", inline suggestions enabled:").append(mInlineSuggestionsEnabled); @@ -285,6 +300,7 @@ public final class AutofillServiceInfo { public void dump(String prefix, PrintWriter pw) { pw.print(prefix); pw.print("Component: "); pw.println(getServiceInfo().getComponentName()); pw.print(prefix); pw.print("Settings: "); pw.println(mSettingsActivity); + pw.print(prefix); pw.print("Passwords activity: "); pw.println(mPasswordsActivity); pw.print(prefix); pw.print("Compat packages: "); pw.println(mCompatibilityPackages); pw.print(prefix); pw.print("Inline Suggestions Enabled: "); pw.println(mInlineSuggestionsEnabled); diff --git a/core/res/res/values/attrs.xml b/core/res/res/values/attrs.xml index 100983bcef0df..efc8fe9aafa24 100644 --- a/core/res/res/values/attrs.xml +++ b/core/res/res/values/attrs.xml @@ -8424,6 +8424,9 @@ + + diff --git a/core/res/res/values/public.xml b/core/res/res/values/public.xml index 9bc92e14de531..7702ee437c432 100644 --- a/core/res/res/values/public.xml +++ b/core/res/res/values/public.xml @@ -3085,6 +3085,7 @@ +