Make onExecuteAppFunction non-abstract and remove timeout results.
This is required so g3 usages can stop overriding this deprecated method and the timeout logic was removed in ag/29477656
Change-Id: Icd07685ea296403b48f4c3cbd74c2e7c3ad28430
Flag: android.app.appfunctions.flags.enable_app_function_manager
Test: atest CtsAppFunctionTestCases -c
Bug: 360864791
diff --git a/core/api/current.txt b/core/api/current.txt
index 67b3280..bc3ffe8 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -8787,7 +8787,7 @@
@FlaggedApi("android.app.appfunctions.flags.enable_app_function_manager") public abstract class AppFunctionService extends android.app.Service {
ctor public AppFunctionService();
method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
- method @Deprecated @MainThread public abstract void onExecuteFunction(@NonNull android.app.appfunctions.ExecuteAppFunctionRequest, @NonNull java.util.function.Consumer<android.app.appfunctions.ExecuteAppFunctionResponse>);
+ method @Deprecated @MainThread public void onExecuteFunction(@NonNull android.app.appfunctions.ExecuteAppFunctionRequest, @NonNull java.util.function.Consumer<android.app.appfunctions.ExecuteAppFunctionResponse>);
method @MainThread public void onExecuteFunction(@NonNull android.app.appfunctions.ExecuteAppFunctionRequest, @NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer<android.app.appfunctions.ExecuteAppFunctionResponse>);
field @NonNull public static final String SERVICE_INTERFACE = "android.app.appfunctions.AppFunctionService";
}
@@ -8822,13 +8822,12 @@
field @NonNull public static final android.os.Parcelable.Creator<android.app.appfunctions.ExecuteAppFunctionResponse> CREATOR;
field public static final String PROPERTY_RETURN_VALUE = "returnValue";
field public static final int RESULT_APP_UNKNOWN_ERROR = 2; // 0x2
- field public static final int RESULT_CANCELLED = 7; // 0x7
+ field public static final int RESULT_CANCELLED = 6; // 0x6
field public static final int RESULT_DENIED = 1; // 0x1
- field public static final int RESULT_DISABLED = 6; // 0x6
+ field public static final int RESULT_DISABLED = 5; // 0x5
field public static final int RESULT_INTERNAL_ERROR = 3; // 0x3
field public static final int RESULT_INVALID_ARGUMENT = 4; // 0x4
field public static final int RESULT_OK = 0; // 0x0
- field public static final int RESULT_TIMED_OUT = 5; // 0x5
}
}
diff --git a/core/java/android/app/appfunctions/AppFunctionService.java b/core/java/android/app/appfunctions/AppFunctionService.java
index 8e41773..7a68a65 100644
--- a/core/java/android/app/appfunctions/AppFunctionService.java
+++ b/core/java/android/app/appfunctions/AppFunctionService.java
@@ -35,6 +35,7 @@
import android.os.CancellationSignal;
import android.os.RemoteCallback;
import android.os.RemoteException;
+import android.util.Log;
import java.util.function.Consumer;
@@ -166,9 +167,13 @@
*/
@MainThread
@Deprecated
- public abstract void onExecuteFunction(
+ public void onExecuteFunction(
@NonNull ExecuteAppFunctionRequest request,
- @NonNull Consumer<ExecuteAppFunctionResponse> callback);
+ @NonNull Consumer<ExecuteAppFunctionResponse> callback) {
+ Log.w(
+ "AppFunctionService",
+ "Calling deprecated default implementation of onExecuteFunction");
+ }
/**
* Called by the system to execute a specific app function.
diff --git a/core/java/android/app/appfunctions/ExecuteAppFunctionResponse.java b/core/java/android/app/appfunctions/ExecuteAppFunctionResponse.java
index 2851e92..a879b1b 100644
--- a/core/java/android/app/appfunctions/ExecuteAppFunctionResponse.java
+++ b/core/java/android/app/appfunctions/ExecuteAppFunctionResponse.java
@@ -96,17 +96,14 @@
*/
public static final int RESULT_INVALID_ARGUMENT = 4;
- /** The operation was timed out. */
- public static final int RESULT_TIMED_OUT = 5;
-
/** The caller tried to execute a disabled app function. */
- public static final int RESULT_DISABLED = 6;
+ public static final int RESULT_DISABLED = 5;
/**
* The operation was cancelled. Use this error code to report that a cancellation is done after
* receiving a cancellation signal.
*/
- public static final int RESULT_CANCELLED = 7;
+ public static final int RESULT_CANCELLED = 6;
/** The result code of the app function execution. */
@ResultCode private final int mResultCode;
@@ -282,7 +279,6 @@
RESULT_APP_UNKNOWN_ERROR,
RESULT_INTERNAL_ERROR,
RESULT_INVALID_ARGUMENT,
- RESULT_TIMED_OUT,
RESULT_DISABLED,
RESULT_CANCELLED
})
diff --git a/libs/appfunctions/api/current.txt b/libs/appfunctions/api/current.txt
index bb0fc41..bc269fe 100644
--- a/libs/appfunctions/api/current.txt
+++ b/libs/appfunctions/api/current.txt
@@ -16,7 +16,7 @@
ctor public AppFunctionService();
method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
method @MainThread public void onExecuteFunction(@NonNull com.google.android.appfunctions.sidecar.ExecuteAppFunctionRequest, @NonNull android.os.CancellationSignal, @NonNull java.util.function.Consumer<com.google.android.appfunctions.sidecar.ExecuteAppFunctionResponse>);
- method @Deprecated @MainThread public abstract void onExecuteFunction(@NonNull com.google.android.appfunctions.sidecar.ExecuteAppFunctionRequest, @NonNull java.util.function.Consumer<com.google.android.appfunctions.sidecar.ExecuteAppFunctionResponse>);
+ method @Deprecated @MainThread public void onExecuteFunction(@NonNull com.google.android.appfunctions.sidecar.ExecuteAppFunctionRequest, @NonNull java.util.function.Consumer<com.google.android.appfunctions.sidecar.ExecuteAppFunctionResponse>);
field @NonNull public static final String BIND_APP_FUNCTION_SERVICE = "android.permission.BIND_APP_FUNCTION_SERVICE";
field @NonNull public static final String SERVICE_INTERFACE = "android.app.appfunctions.AppFunctionService";
}
@@ -45,12 +45,12 @@
method @NonNull public static com.google.android.appfunctions.sidecar.ExecuteAppFunctionResponse newSuccess(@NonNull android.app.appsearch.GenericDocument, @Nullable android.os.Bundle);
field public static final String PROPERTY_RETURN_VALUE = "returnValue";
field public static final int RESULT_APP_UNKNOWN_ERROR = 2; // 0x2
+ field public static final int RESULT_CANCELLED = 6; // 0x6
field public static final int RESULT_DENIED = 1; // 0x1
- field public static final int RESULT_DISABLED = 6; // 0x6
+ field public static final int RESULT_DISABLED = 5; // 0x5
field public static final int RESULT_INTERNAL_ERROR = 3; // 0x3
field public static final int RESULT_INVALID_ARGUMENT = 4; // 0x4
field public static final int RESULT_OK = 0; // 0x0
- field public static final int RESULT_TIMED_OUT = 5; // 0x5
}
}
diff --git a/libs/appfunctions/java/com/google/android/appfunctions/sidecar/AppFunctionService.java b/libs/appfunctions/java/com/google/android/appfunctions/sidecar/AppFunctionService.java
index 6023c97..6e91de6 100644
--- a/libs/appfunctions/java/com/google/android/appfunctions/sidecar/AppFunctionService.java
+++ b/libs/appfunctions/java/com/google/android/appfunctions/sidecar/AppFunctionService.java
@@ -26,6 +26,7 @@
import android.os.Binder;
import android.os.IBinder;
import android.os.CancellationSignal;
+import android.util.Log;
import java.util.function.Consumer;
@@ -143,7 +144,11 @@
*/
@MainThread
@Deprecated
- public abstract void onExecuteFunction(
+ public void onExecuteFunction(
@NonNull ExecuteAppFunctionRequest request,
- @NonNull Consumer<ExecuteAppFunctionResponse> callback);
+ @NonNull Consumer<ExecuteAppFunctionResponse> callback) {
+ Log.w(
+ "AppFunctionService",
+ "Calling deprecated default implementation of onExecuteFunction");
+ }
}
diff --git a/libs/appfunctions/java/com/google/android/appfunctions/sidecar/ExecuteAppFunctionResponse.java b/libs/appfunctions/java/com/google/android/appfunctions/sidecar/ExecuteAppFunctionResponse.java
index c7ce95b..d87fec79 100644
--- a/libs/appfunctions/java/com/google/android/appfunctions/sidecar/ExecuteAppFunctionResponse.java
+++ b/libs/appfunctions/java/com/google/android/appfunctions/sidecar/ExecuteAppFunctionResponse.java
@@ -73,11 +73,14 @@
*/
public static final int RESULT_INVALID_ARGUMENT = 4;
- /** The operation was timed out. */
- public static final int RESULT_TIMED_OUT = 5;
-
/** The caller tried to execute a disabled app function. */
- public static final int RESULT_DISABLED = 6;
+ public static final int RESULT_DISABLED = 5;
+
+ /**
+ * The operation was cancelled. Use this error code to report that a cancellation is done after
+ * receiving a cancellation signal.
+ */
+ public static final int RESULT_CANCELLED = 6;
/** The result code of the app function execution. */
@ResultCode private final int mResultCode;
@@ -236,7 +239,6 @@
RESULT_APP_UNKNOWN_ERROR,
RESULT_INTERNAL_ERROR,
RESULT_INVALID_ARGUMENT,
- RESULT_TIMED_OUT,
RESULT_DISABLED
})
@Retention(RetentionPolicy.SOURCE)
diff --git a/services/appfunctions/java/com/android/server/appfunctions/AppFunctionManagerServiceImpl.java b/services/appfunctions/java/com/android/server/appfunctions/AppFunctionManagerServiceImpl.java
index c87d516..2d9e76b 100644
--- a/services/appfunctions/java/com/android/server/appfunctions/AppFunctionManagerServiceImpl.java
+++ b/services/appfunctions/java/com/android/server/appfunctions/AppFunctionManagerServiceImpl.java
@@ -492,7 +492,7 @@
Slog.e(TAG, "Failed to bind to the AppFunctionService");
safeExecuteAppFunctionCallback.onResult(
ExecuteAppFunctionResponse.newFailure(
- ExecuteAppFunctionResponse.RESULT_TIMED_OUT,
+ ExecuteAppFunctionResponse.RESULT_INTERNAL_ERROR,
"Failed to bind the AppFunctionService.",
/* extras= */ null));
}