IsolatedWorker
public
interface
IsolatedWorker
android.adservices.ondevicepersonalization.IsolatedWorker |
Interfaz con métodos que se deben implementar para controlar las solicitudes del SO a un IsolatedService
. IsolatedService
crea una instancia de IsolatedWorker
en cada solicitud y llama a uno de los métodos que se indican a continuación, según el tipo de solicitud. IsolatedService
llama al método en un subproceso de Binder y IsolatedWorker
debe descargar las operaciones de larga duración en un subproceso de trabajo. El parámetro de consumidor de cada método se usa para mostrar resultados.
Resumen
Métodos públicos | |
---|---|
default
void
|
onDownloadCompleted(DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)
Controla una descarga completada. |
default
void
|
onEvent(EventInput input, Consumer<EventOutput> consumer)
Controla un evento activado por una solicitud a una URL de seguimiento |
default
void
|
onExecute(ExecuteInput input, Consumer<ExecuteOutput> consumer)
Controla una solicitud de una aplicación. |
default
void
|
onRender(RenderInput input, Consumer<RenderOutput> consumer)
Genera HTML para los resultados que se mostraron como resultado de |
default
void
|
onTrainingExample(TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
Generar un solo ejemplo de entrenamiento que se use para un trabajo de procesamiento federado |
Métodos públicos
onDownloadCompleted
public void onDownloadCompleted (DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)
Controla una descarga completada. La plataforma descarga contenido con los parámetros definidos en el manifiesto del paquete de IsolatedService
, llama a esta función después de que se completa la descarga y actualiza la tabla REMOTE_DATA de IsolatedService#getRemoteData(RequestToken)
con el resultado de este método.
Parámetros | |
---|---|
input |
DownloadCompletedInput : Descarga los parámetros del controlador.
Este valor no puede ser null . |
consumer |
Consumer : Es la devolución de llamada que recibe el resultado. Se debe llamar con null en
un error. Si se llama con null , no se actualizan actualizaciones a la tabla REMOTE_DATA.
Si este método arroja una |
onEvent
public void onEvent (EventInput input, Consumer<EventOutput> consumer)
Controla un evento activado por una solicitud a una URL de seguimiento EventUrlProvider
proporcionada por la plataforma que se incorpora en el resultado HTML que muestra onRender(android.adservices.ondevicepersonalization.RenderInput, java.util.function.Consumer)
. La plataforma actualiza la tabla EVENTS con EventOutput#getEventLogRecord()
.
Parámetros | |
---|---|
input |
EventInput : Son los parámetros necesarios para calcular los datos de eventos.
Este valor no puede ser null . |
consumer |
Consumer : Es la devolución de llamada que recibe el resultado. Se debe llamar con null en
un error. Si se llama con null , no se escriben datos en la tabla EVENTS.
Si este método arroja una |
en ejecución
public void onExecute (ExecuteInput input, Consumer<ExecuteOutput> consumer)
Controla una solicitud de una app. Se llama a este método cuando una app llama a OnDevicePersonalizationManager#execute(ComponentName, PersistableBundle,
java.util.concurrent.Executor, OutcomeReceiver)
que hace referencia a un IsolatedService
con nombre.
Parámetros | |
---|---|
input |
ExecuteInput : Son los parámetros de la solicitud de la app que realiza la llamada. Este valor no puede ser null . |
consumer |
Consumer : Es la devolución de llamada que recibe el resultado ExecuteOutput . Se debe llamar con null en un error. El error se propaga a la app que realiza la llamada como una OnDevicePersonalizationException con el código de error OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED . Para evitar que se filtren datos privados en la app que realiza la llamada, no hay informes de errores más detallados disponibles. Si IsolatedService necesita informar estadísticas de errores a su backend, debe propagar ExecuteOutput con datos de errores para el registro y confiar en Federated Analytics para agregar los informes de errores.
Si este método genera una |
onRender
public void onRender (RenderInput input, Consumer<RenderOutput> consumer)
Genera HTML para los resultados que se mostraron como resultado de onExecute(android.adservices.ondevicepersonalization.ExecuteInput, java.util.function.Consumer)
. Se llama cuando una app cliente llama a OnDevicePersonalizationManager#requestSurfacePackage(SurfacePackageToken, IBinder, int, int, int, java.util.concurrent.Executor, OutcomeReceiver)
.
La plataforma renderizará este HTML en una WebView
dentro de un marco vallado.
Parámetros | |
---|---|
input |
RenderInput : Son los parámetros para la solicitud de renderización.
Este valor no puede ser null . |
consumer |
Consumer : Es la devolución de llamada que recibe el resultado. Se debe llamar con null en
un error. El error se propaga a la app que realiza la llamada como una OnDevicePersonalizationException con el código de error OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED .
Si este método genera una |
EjemploDeEntrenamiento
public void onTrainingExample (TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
Generar un solo ejemplo de entrenamiento que se use para un trabajo de procesamiento federado
Parámetros | |
---|---|
input |
TrainingExampleInput : Son los parámetros necesarios para generar el ejemplo de entrenamiento.
Este valor no puede ser null . |
consumer |
Consumer : Es la devolución de llamada que se invocará al finalizar.
Este valor no puede ser null . |