Isolierter Worker
public
interface
IsolatedWorker
android.adservices.ondevicepersonalization.IsolatedWorker |
Schnittstelle mit Methoden, die implementiert werden müssen, um Anfragen vom Betriebssystem an einen IsolatedService
zu verarbeiten. IsolatedService
erstellt eine Instanz von IsolatedWorker
auf
jeder Anfrage und ruft abhängig vom Anfragetyp eine der folgenden Methoden auf. IsolatedService
ruft die Methode in einem Binder-Thread auf und IsolatedWorker
sollte
lang andauernde Vorgänge in einen Worker-Thread verlagern. Der Consumer-Parameter jeder Methode wird verwendet.
um Ergebnisse zurückzugeben.
Zusammenfassung
Öffentliche Methoden | |
---|---|
default
void
|
onDownloadCompleted(DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)
Verarbeitet einen abgeschlossenen Download. |
default
void
|
onEvent(EventInput input, Consumer<EventOutput> consumer)
Verarbeitet ein Ereignis, das durch eine Anfrage an die von der Plattform bereitgestellte Tracking-URL |
default
void
|
onExecute(ExecuteInput input, Consumer<ExecuteOutput> consumer)
Verarbeitet eine Anfrage von einer App. |
default
void
|
onRender(RenderInput input, Consumer<RenderOutput> consumer)
Erzeugt HTML für die Ergebnisse, die als Ergebnis von
|
default
void
|
onTrainingExample(TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
Generieren Sie ein einzelnes Trainingsbeispiel, das für den föderierten Berechnungsjob verwendet wird. |
Öffentliche Methoden
onDownloadCompleted (Vorgang abgeschlossen)
public void onDownloadCompleted (DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)
Verarbeitet einen abgeschlossenen Download. Die Plattform lädt Inhalte mit den in den
Das Paketmanifest von IsolatedService
; ruft diese Funktion nach dem Download auf
abgeschlossen ist, und aktualisiert die Tabelle REMOTE_DATA
IsolatedService#getRemoteData(RequestToken)
durch das Ergebnis dieser Methode.
Parameter | |
---|---|
input |
DownloadCompletedInput : Handler-Parameter herunterladen.
Dieser Wert darf nicht null sein. |
consumer |
Consumer : Callback, der das Ergebnis empfängt. Sollte mit null aufgerufen werden
Fehler. Bei einem Aufruf mit null wird die Tabelle REMOTE_DATA nicht aktualisiert.
Wenn diese Methode einen |
onEvent
public void onEvent (EventInput input, Consumer<EventOutput> consumer)
Verarbeitet ein Ereignis, das durch eine Anfrage an die von der Plattform bereitgestellte Tracking-URL EventUrlProvider
ausgelöst wird, die in die HTML-Ausgabe eingebettet war, die von
onRender(android.adservices.ondevicepersonalization.RenderInput, java.util.function.Consumer)
. Die Plattform aktualisiert die Tabelle EVENTS mit
EventOutput#getEventLogRecord()
Parameter | |
---|---|
input |
EventInput : Die zur Berechnung von Ereignisdaten erforderlichen Parameter.
Dieser Wert darf nicht null sein. |
consumer |
Consumer : Callback, der das Ergebnis empfängt. Sollte mit null aufgerufen werden
Fehler. Beim Aufruf mit null werden keine Daten in die Tabelle EVENTS geschrieben.
Wenn diese Methode einen |
onExecute
public void onExecute (ExecuteInput input, Consumer<ExecuteOutput> consumer)
Verarbeitet eine Anfrage von einer App. Diese Methode wird aufgerufen, wenn eine App OnDevicePersonalizationManager#execute(ComponentName, PersistableBundle,
java.util.concurrent.Executor, OutcomeReceiver)
aufruft, die auf eine benannte
IsolatedService
.
Parameter | |
---|---|
input |
ExecuteInput : Parameter aus der aufrufenden App anfordern.
Dieser Wert darf nicht null sein. |
consumer |
Consumer : Callback, der das Ergebnis ExecuteOutput empfängt. Sollte aufgerufen werden
mit null bei einem Fehler. Der Fehler wird an die aufrufende App als
OnDevicePersonalizationException mit Fehlercode OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED . Um Datenlecks zu vermeiden
an die Anruf-App übertragen, sind keine detaillierteren Fehlerberichte verfügbar. Wenn das IsolatedService Fehlerstatistiken an sein Backend melden muss, sollte es ExecuteOutput für die Protokollierung mit Fehlerdaten füllen und auf Federated Analytics zurückgreifen, um sie zu aggregieren
Fehlerberichte.
Wenn diese Methode einen |
onRender
public void onRender (RenderInput input, Consumer<RenderOutput> consumer)
Erzeugt HTML für die Ergebnisse, die als Ergebnis von
onExecute(android.adservices.ondevicepersonalization.ExecuteInput, java.util.function.Consumer)
Wird aufgerufen, wenn eine Client-App aufruft
OnDevicePersonalizationManager#requestSurfacePackage(SurfacePackageToken, IBinder, int, int, int, java.util.concurrent.Executor, OutcomeReceiver)
Die Plattform rendert diesen HTML-Code in einem WebView
innerhalb eines Fencing-Elements
Frame.
Parameter | |
---|---|
input |
RenderInput : Parameter für die Renderinganfrage.
Dieser Wert darf nicht null sein. |
consumer |
Consumer : Callback, der das Ergebnis empfängt. Sollte mit null aufgerufen werden
Fehler. Der Fehler wird als OnDevicePersonalizationException mit Fehlercode OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED an die aufrufende Anwendung weitergegeben.
Wenn diese Methode einen |
onTrainingExample
public void onTrainingExample (TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
Generieren Sie ein einzelnes Trainingsbeispiel, das für den föderierten Berechnungsjob verwendet wird.
Parameter | |
---|---|
input |
TrainingExampleInput : Die zum Generieren des Trainingsbeispiels erforderlichen Parameter.
Dieser Wert darf nicht null sein. |
consumer |
Consumer : Callback, der nach Abschluss aufgerufen werden soll.
Dieser Wert darf nicht null sein. |