IsolatedWorker
public
interface
IsolatedWorker
android.adservices.ondevicepersonalization.IsolatedWorker |
Schnittstelle mit Methoden, die implementiert werden müssen, um Anfragen vom Betriebssystem an einen IsolatedService
zu verarbeiten. Der IsolatedService
erstellt bei jeder Anfrage eine Instanz von IsolatedWorker
und ruft je nach 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 Verbraucherparameter 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)
Hier wird ein Ereignis verarbeitet, das durch eine Anfrage an eine 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)
Generiert HTML für die Ergebnisse, die durch |
default
void
|
onTrainingExample(TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
Generieren Sie ein einzelnes Trainingsbeispiel, das für einen föderierten Berechnungsjob verwendet wird. |
Öffentliche Methoden
onDownloadCompleted
public void onDownloadCompleted (DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)
Verarbeitet einen abgeschlossenen Download. Die Plattform lädt Inhalte mit den im Paketmanifest der IsolatedService
definierten Parametern herunter, ruft diese Funktion nach Abschluss des Downloads auf und aktualisiert die Tabelle „REMOTE_DATA“ aus IsolatedService#getRemoteData(RequestToken)
mit dem Ergebnis dieser Methode.
Parameter | |
---|---|
input |
DownloadCompletedInput : Handler-Parameter herunterladen.
Dieser Wert darf nicht null sein. |
consumer |
Consumer : Callback, der das Ergebnis empfängt. Sollte bei einem Fehler mit null aufgerufen werden. Wenn er mit null aufgerufen wird, werden keine Änderungen an der Tabelle „REMOTE_DATA“ vorgenommen.
Wenn bei dieser Methode eine |
onEvent
public void onEvent (EventInput input, Consumer<EventOutput> consumer)
Verarbeitet ein Ereignis, das durch eine Anfrage an eine von der Plattform bereitgestellte Tracking-URL EventUrlProvider
ausgelöst wird, die in die von onRender(android.adservices.ondevicepersonalization.RenderInput, java.util.function.Consumer)
zurückgegebene HTML-Ausgabe eingebettet wurde. Die Plattform aktualisiert die Tabelle „EVENTS“ mit EventOutput#getEventLogRecord()
.
Parameter | |
---|---|
input |
EventInput : Die Parameter, die zum Berechnen von Ereignisdaten erforderlich sind.
Dieser Wert darf nicht null sein. |
consumer |
Consumer : Callback, der das Ergebnis empfängt. Sollte bei einem Fehler mit null aufgerufen werden. Beim Aufruf mit null werden keine Daten in die Tabelle EVENTS geschrieben.
Wenn diese Methode eine |
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 sich auf eine benannte IsolatedService
bezieht.
Parameter | |
---|---|
input |
ExecuteInput : Anfrageparameter der aufrufenden App. Dieser Wert darf nicht null sein. |
consumer |
Consumer : Rückruf, der das Ergebnis ExecuteOutput empfängt. Sollte bei einem Fehler mit null aufgerufen werden. Der Fehler wird als OnDevicePersonalizationException mit dem Fehlercode OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED an die aufrufende App weitergegeben. Um das Risiko von Datenlecks an die anrufende App zu vermeiden, sind keine detaillierteren Fehlerberichte verfügbar. Wenn IsolatedService Fehlerstatistiken an sein Backend senden muss, sollte es ExecuteOutput mit Fehlerdaten für die Protokollierung füllen und die Fehlerberichte mithilfe von Federated Analytics zusammenführen.
Wenn diese Methode eine |
onRender
public void onRender (RenderInput input, Consumer<RenderOutput> consumer)
Generiert HTML für die Ergebnisse, die durch onExecute(android.adservices.ondevicepersonalization.ExecuteInput, java.util.function.Consumer)
zurückgegeben wurden. Wird aufgerufen, wenn eine Client-App OnDevicePersonalizationManager#requestSurfacePackage(SurfacePackageToken, IBinder, int, int, int, java.util.concurrent.Executor, OutcomeReceiver)
aufruft.
Die Plattform rendert diesen HTML-Code in einem WebView
innerhalb eines abgegrenzten Frames.
Parameter | |
---|---|
input |
RenderInput : Parameter für die Renderanfrage.
Dieser Wert darf nicht null sein. |
consumer |
Consumer : Callback, der das Ergebnis empfängt. Sollte bei einem Fehler mit null aufgerufen werden. Der Fehler wird als OnDevicePersonalizationException mit dem Fehlercode OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED an die aufrufende App weitergegeben.
Wenn diese Methode eine |
onTrainingExample
public void onTrainingExample (TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
Generieren Sie ein einzelnes Trainingsbeispiel, das für einen 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. |