summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/system-current.txt6
-rw-r--r--core/java/android/service/autofill/AutofillFieldClassificationService.java20
-rw-r--r--core/java/android/view/autofill/AutofillManager.java2
-rw-r--r--packages/ExtServices/AndroidManifest.xml6
-rw-r--r--services/autofill/java/com/android/server/autofill/FieldClassificationStrategy.java13
5 files changed, 15 insertions, 32 deletions
diff --git a/api/system-current.txt b/api/system-current.txt
index 6aef50ed38c7..bafa8d6911b2 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -4545,11 +4545,9 @@ package android.service.autofill {
public abstract class AutofillFieldClassificationService extends android.app.Service {
method public android.os.IBinder onBind(android.content.Intent);
method public float[][] onGetScores(java.lang.String, android.os.Bundle, java.util.List<android.view.autofill.AutofillValue>, java.util.List<java.lang.String>);
- field public static final java.lang.String RESOURCE_AVAILABLE_ALGORITHMS = "autofill_field_classification_available_algorithms";
- field public static final java.lang.String RESOURCE_DEFAULT_ALGORITHM = "autofill_field_classification_default_algorithm";
field public static final java.lang.String SERVICE_INTERFACE = "android.service.autofill.AutofillFieldClassificationService";
- field public static final deprecated java.lang.String SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS = "android.autofill.field_classification.available_algorithms";
- field public static final deprecated java.lang.String SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM = "android.autofill.field_classification.default_algorithm";
+ field public static final java.lang.String SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS = "android.autofill.field_classification.available_algorithms";
+ field public static final java.lang.String SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM = "android.autofill.field_classification.default_algorithm";
}
}
diff --git a/core/java/android/service/autofill/AutofillFieldClassificationService.java b/core/java/android/service/autofill/AutofillFieldClassificationService.java
index e5e1c926fbcd..1cd76d2e9ec9 100644
--- a/core/java/android/service/autofill/AutofillFieldClassificationService.java
+++ b/core/java/android/service/autofill/AutofillFieldClassificationService.java
@@ -65,36 +65,16 @@ public abstract class AutofillFieldClassificationService extends Service {
/**
* Manifest metadata key for the resource string containing the name of the default field
* classification algorithm.
- *
- * @deprecated Use {@link #RESOURCE_DEFAULT_ALGORITHM} instead.
*/
- @Deprecated
public static final String SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM =
"android.autofill.field_classification.default_algorithm";
-
/**
* Manifest metadata key for the resource string array containing the names of all field
* classification algorithms provided by the service.
- *
- * @deprecated Use {@link #RESOURCE_AVAILABLE_ALGORITHMS} instead.
*/
- @Deprecated
public static final String SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS =
"android.autofill.field_classification.available_algorithms";
- /**
- * Name of the resource string containing the name of the default field
- * classification algorithm.
- */
- public static final String RESOURCE_DEFAULT_ALGORITHM =
- "autofill_field_classification_default_algorithm";
-
- /**
- * Name of the resource string array containing the names of all field
- * classification algorithms provided by the service.
- */
- public static final String RESOURCE_AVAILABLE_ALGORITHMS =
- "autofill_field_classification_available_algorithms";
/** {@hide} **/
public static final String EXTRA_SCORES = "scores";
diff --git a/core/java/android/view/autofill/AutofillManager.java b/core/java/android/view/autofill/AutofillManager.java
index 2cd4b2bca898..9419e93d0066 100644
--- a/core/java/android/view/autofill/AutofillManager.java
+++ b/core/java/android/view/autofill/AutofillManager.java
@@ -1413,7 +1413,7 @@ public final class AutofillManager {
try {
mService.getAvailableFieldClassificationAlgorithms(receiver);
final String[] algorithms = receiver
- .getObjectResult(SyncResultReceiver.TYPE_STRING_ARRAY);
+ .getObjectResult(SyncResultReceiver.TYPE_STRING_ARRAY);
return algorithms != null ? Arrays.asList(algorithms) : Collections.emptyList();
} catch (RemoteException e) {
e.rethrowFromSystemServer();
diff --git a/packages/ExtServices/AndroidManifest.xml b/packages/ExtServices/AndroidManifest.xml
index a7217ecabc35..ff70e9712bcc 100644
--- a/packages/ExtServices/AndroidManifest.xml
+++ b/packages/ExtServices/AndroidManifest.xml
@@ -55,6 +55,12 @@
<intent-filter>
<action android:name="android.service.autofill.AutofillFieldClassificationService" />
</intent-filter>
+ <meta-data
+ android:name="android.autofill.field_classification.default_algorithm"
+ android:resource="@string/autofill_field_classification_default_algorithm" />
+ <meta-data
+ android:name="android.autofill.field_classification.available_algorithms"
+ android:resource="@array/autofill_field_classification_available_algorithms" />
</service>
<library android:name="android.ext.services"/>
diff --git a/services/autofill/java/com/android/server/autofill/FieldClassificationStrategy.java b/services/autofill/java/com/android/server/autofill/FieldClassificationStrategy.java
index 8ee65711feb4..293f908e2708 100644
--- a/services/autofill/java/com/android/server/autofill/FieldClassificationStrategy.java
+++ b/services/autofill/java/com/android/server/autofill/FieldClassificationStrategy.java
@@ -17,8 +17,8 @@ package com.android.server.autofill;
import static com.android.server.autofill.Helper.sDebug;
import static com.android.server.autofill.Helper.sVerbose;
-import static android.service.autofill.AutofillFieldClassificationService.RESOURCE_AVAILABLE_ALGORITHMS;
-import static android.service.autofill.AutofillFieldClassificationService.RESOURCE_DEFAULT_ALGORITHM;
+import static android.service.autofill.AutofillFieldClassificationService.SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS;
+import static android.service.autofill.AutofillFieldClassificationService.SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM;
import android.Manifest;
import android.annotation.MainThread;
@@ -226,7 +226,7 @@ final class FieldClassificationStrategy {
*/
@Nullable
String[] getAvailableAlgorithms() {
- return getMetadataValue(RESOURCE_AVAILABLE_ALGORITHMS, "array",
+ return getMetadataValue(SERVICE_META_DATA_KEY_AVAILABLE_ALGORITHMS,
(res, id) -> res.getStringArray(id));
}
@@ -235,12 +235,11 @@ final class FieldClassificationStrategy {
*/
@Nullable
String getDefaultAlgorithm() {
- return getMetadataValue(RESOURCE_DEFAULT_ALGORITHM, "string",
- (res, id) -> res.getString(id));
+ return getMetadataValue(SERVICE_META_DATA_KEY_DEFAULT_ALGORITHM, (res, id) -> res.getString(id));
}
@Nullable
- private <T> T getMetadataValue(String field, String type, MetadataParser<T> parser) {
+ private <T> T getMetadataValue(String field, MetadataParser<T> parser) {
final ServiceInfo serviceInfo = getServiceInfo();
if (serviceInfo == null) return null;
@@ -254,7 +253,7 @@ final class FieldClassificationStrategy {
return null;
}
- final int resourceId = res.getIdentifier(field, type, serviceInfo.packageName);
+ final int resourceId = serviceInfo.metaData.getInt(field);
return parser.get(res, resourceId);
}