Izolowana instancja robocza

public interface IsolatedWorker

android.adservices.ondevicepersonalization.IsolatedWorker,


Interfejs z metodami, które należy wdrożyć do obsługi żądań z systemu operacyjnego wysyłanego do IsolatedService. IsolatedService tworzy instancję IsolatedWorker na w zależności od typu żądania i wywołuje jedną z poniższych metod. IsolatedService wywołuje metodę w wątku Binder, a IsolatedWorker powinien przenieść długotrwałe operacje do wątku instancji roboczej. Używany jest parametr konsumenta każdej metody, .

Podsumowanie

Metody publiczne

default void onDownloadCompleted(DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)

Obsługi ukończone pobieranie.

default void onEvent(EventInput input, Consumer<EventOutput> consumer)

Obsługuje zdarzenie wywołane przez żądanie wysyłane do linku monitorującego EventUrlProvider udostępnionego przez platformę, który został umieszczony w danych wyjściowych HTML zwróconych przez onRender(android.adservices.ondevicepersonalization.RenderInput, java.util.function.Consumer)

default void onExecute(ExecuteInput input, Consumer<ExecuteOutput> consumer)

Obsługuje żądania z aplikacji.

default void onRender(RenderInput input, Consumer<RenderOutput> consumer)

Generuje kod HTML dla wyników zwróconych w wyniku onExecute(android.adservices.ondevicepersonalization.ExecuteInput, java.util.function.Consumer)

default void onTrainingExample(TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)

Wygeneruj jeden przykład trenowania używany na potrzeby sfederowanego zadania obliczeniowego.

Metody publiczne

onDownloadUkończono

public void onDownloadCompleted (DownloadCompletedInput input, 
                Consumer<DownloadCompletedOutput> consumer)

Obsługi ukończone pobieranie. Platforma pobiera treści przy użyciu parametrów zdefiniowanych w plik manifestu pakietu IsolatedService, wywołuje tę funkcję po pobraniu. jest zakończona i aktualizuje tabelę REMOTE_DATA z IsolatedService#getRemoteData(RequestToken) z wynikiem tej metody.

Parametry
input DownloadCompletedInput: parametry modułu obsługi pobierania. Ta wartość nie może być typu null.

consumer Consumer: wywołanie zwrotne, do którego otrzymano wynik. powinno zostać nawiązane przy użyciu funkcji null. błąd. Jeśli zostanie wywołana za pomocą funkcji null, tabela REMOTE_DATA nie będzie aktualizowana.

Jeśli ta metoda zgłasza żądanie RuntimeException, w interfejsie API nie są przeprowadzane żadne aktualizacje Tabela REMOTE_DATA.

onEvent

public void onEvent (EventInput input, 
                Consumer<EventOutput> consumer)

Obsługuje zdarzenie wywołane przez żądanie wysyłane do linku monitorującego EventUrlProvider udostępnionego przez platformę, który został umieszczony w danych wyjściowych HTML zwróconych przez onRender(android.adservices.ondevicepersonalization.RenderInput, java.util.function.Consumer) Platforma aktualizuje tabelę ZDARZENIA EventOutput#getEventLogRecord()

Parametry
input EventInput: parametry potrzebne do obliczania danych zdarzenia. Ta wartość nie może być typu null.

consumer Consumer: wywołanie zwrotne, do którego otrzymano wynik. powinno zostać nawiązane przy użyciu funkcji null. błąd. Jeśli wywołasz funkcję null, w tabeli EVENTS nie będą zapisywane żadne dane.

Jeśli ta metoda zgłasza zdarzenie RuntimeException, w funkcji EVENTS nie są zapisywane żadne dane. tabeli.

onExecute

public void onExecute (ExecuteInput input, 
                Consumer<ExecuteOutput> consumer)

Obsługuje żądania z aplikacji. Ta metoda jest wywoływana, gdy aplikacja wywołuje metodę OnDevicePersonalizationManager#execute(ComponentName, PersistableBundle, java.util.concurrent.Executor, OutcomeReceiver) odwołującą się do nazwanego IsolatedService

Parametry
input ExecuteInput: żądanie parametrów z aplikacji do połączeń. Ta wartość nie może być typu null.

consumer Consumer: wywołanie zwrotne, do którego otrzymano wynik ExecuteOutput. Należy nazwać z błędem: null. Informacje o błędzie są przekazywane do aplikacji wywołującej jako plik OnDevicePersonalizationException z kodem błędu OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED. Aby uniknąć wycieku danych prywatnych do aplikacji do połączeń, szczegółowe informacje o błędach nie są dostępne. Jeśli IsolatedService musi raportować statystyki błędów do swojego backendu, powinien wypełnić ExecuteOutput danymi o błędach do logowania i wykorzystywać do agregacji Federated Analytics z raportów o błędach.

Jeśli ta metoda zgłasza zdarzenie RuntimeException, jest on również zgłaszany do Wywołuję aplikacje jako OnDevicePersonalizationException z kodem błędu OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED.

onRender

public void onRender (RenderInput input, 
                Consumer<RenderOutput> consumer)

Generuje kod HTML dla wyników zwróconych w wyniku onExecute(android.adservices.ondevicepersonalization.ExecuteInput, java.util.function.Consumer) Wywoływane, gdy dzwoni aplikacja klienta OnDevicePersonalizationManager#requestSurfacePackage(SurfacePackageToken, IBinder, int, int, int, java.util.concurrent.Executor, OutcomeReceiver) Platforma wyrenderuje ten kod HTML w elemencie WebView wewnątrz ogrodzonego ramki.

Parametry
input RenderInput: parametry żądania renderowania. Ta wartość nie może być typu null.

consumer Consumer: wywołanie zwrotne, do którego otrzymano wynik. powinno zostać nawiązane przy użyciu funkcji null. błąd. Informacje o błędzie są przekazywane do aplikacji wywołującej jako kod OnDevicePersonalizationException z kodem błędu OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED.

Jeśli ta metoda zgłasza zdarzenie RuntimeException, jest on również zgłaszany do wywołania aplikacje jako OnDevicePersonalizationException z kodem błędu OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED.

onTrainingExample

public void onTrainingExample (TrainingExampleInput input, 
                Consumer<TrainingExampleOutput> consumer)

Wygeneruj jeden przykład trenowania używany na potrzeby sfederowanego zadania obliczeniowego.

Parametry
input TrainingExampleInput: parametry potrzebne do wygenerowania przykładowego trenowania. Ta wartość nie może być typu null.

consumer Consumer: wywołanie zwrotne do wywołania po zakończeniu. Ta wartość nie może być typu null.