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 |
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
|
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 |
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 |
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 |
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 |
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. |