IsolatedWorker
public
interface
IsolatedWorker
android.adservices.ondevicepersonalization.IsolatedWorker |
OS から IsolatedService
へのリクエストを処理するために実装する必要があるメソッドのインターフェース。IsolatedService
はリクエストごとに IsolatedWorker
のインスタンスを作成し、リクエストのタイプに応じて以下のメソッドのいずれかを呼び出します。IsolatedService
は Binder スレッドでメソッドを呼び出し、IsolatedWorker
は長時間実行オペレーションをワーカー スレッドにオフロードする必要があります。各メソッドのコンシューマ パラメータは結果を返すために使用されます。
まとめ
パブリック メソッド | |
---|---|
default
void
|
onDownloadCompleted(DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)
完了したダウンロードを処理します。 |
default
void
|
onEvent(EventInput input, Consumer<EventOutput> consumer)
|
default
void
|
onExecute(ExecuteInput input, Consumer<ExecuteOutput> consumer)
アプリからのリクエストを処理します。 |
default
void
|
onRender(RenderInput input, Consumer<RenderOutput> consumer)
|
default
void
|
onTrainingExample(TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
連携コンピューティング ジョブに使用する単一のトレーニング サンプルを生成します。 |
パブリック メソッド
onDownloadCompleted
public void onDownloadCompleted (DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)
完了したダウンロードを処理します。プラットフォームは、IsolatedService
のパッケージ マニフェストで定義されたパラメータを使用してコンテンツをダウンロードし、ダウンロードの完了後にこの関数を呼び出し、このメソッドの結果を使用して IsolatedService#getRemoteData(RequestToken)
の REMOTE_DATA テーブルを更新します。
パラメータ | |
---|---|
input |
DownloadCompletedInput : ハンドラ パラメータをダウンロードします。
この値が null になることはありません。 |
consumer |
Consumer : 結果を受け取るコールバック。エラーが発生した場合は、null を指定して呼び出す必要があります。null を指定して呼び出した場合、REMOTE_DATA テーブルは更新されません。このメソッドが |
onEvent
public void onEvent (EventInput input, Consumer<EventOutput> consumer)
onRender(android.adservices.ondevicepersonalization.RenderInput, java.util.function.Consumer)
から返された HTML 出力に埋め込まれた、プラットフォーム提供のトラッキング URL EventUrlProvider
へのリクエストによってトリガーされたイベントを処理します。プラットフォームは、EventOutput#getEventLogRecord()
で EVENTS テーブルを更新します。
パラメータ | |
---|---|
input |
EventInput : イベントデータの計算に必要なパラメータ。
この値が null になることはありません。 |
consumer |
Consumer : 結果を受け取るコールバック。エラーが発生した場合は、null を指定して呼び出す必要があります。null を指定して呼び出した場合、EVENTS テーブルにデータは書き込まれません。このメソッドが |
onExecute
public void onExecute (ExecuteInput input, Consumer<ExecuteOutput> consumer)
アプリからのリクエストを処理します。このメソッドは、名前付き IsolatedService
を参照する OnDevicePersonalizationManager#execute(ComponentName, PersistableBundle,
java.util.concurrent.Executor, OutcomeReceiver)
をアプリが呼び出すと呼び出されます。
パラメータ | |
---|---|
input |
ExecuteInput : 呼び出し元のアプリにパラメータをリクエストします。この値が null になることはありません。 |
consumer |
Consumer : 結果 ExecuteOutput を受け取るコールバック。エラーが発生した場合は、null を指定して呼び出す必要があります。このエラーは、OnDevicePersonalizationException としてエラーコード OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED とともに呼び出し元アプリに伝播されます。呼び出し元アプリにプライベート データが漏洩することを避けるため、より詳細なエラーレポートは提供されていません。IsolatedService がバックエンドにエラー統計情報を報告する必要がある場合は、ロギング用のエラーデータを ExecuteOutput に入力し、Federated Analytics を利用してエラーレポートの集計を行う必要があります。
このメソッドが |
onRender
public void onRender (RenderInput input, Consumer<RenderOutput> consumer)
onExecute(android.adservices.ondevicepersonalization.ExecuteInput, java.util.function.Consumer)
の結果として返された結果の HTML を生成します。クライアント アプリが OnDevicePersonalizationManager#requestSurfacePackage(SurfacePackageToken, IBinder, int, int, int, java.util.concurrent.Executor, OutcomeReceiver)
を呼び出したときに呼び出されます。
プラットフォームは、この HTML をフェンス フレーム内の WebView
にレンダリングします。
パラメータ | |
---|---|
input |
RenderInput : レンダリング リクエストのパラメータ。この値が null になることはありません。 |
consumer |
Consumer : 結果を受け取るコールバック。エラーが発生した場合は、null を指定して呼び出す必要があります。エラーは、OnDevicePersonalizationException としてエラーコード OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED とともに呼び出し元アプリに伝播されます。このメソッドが |
onTrainingExample
public void onTrainingExample (TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
連携コンピューティング ジョブに使用する単一のトレーニング サンプルを生成する。
パラメータ | |
---|---|
input |
TrainingExampleInput : トレーニング サンプルの生成に必要なパラメータ。この値が null になることはありません。 |
consumer |
Consumer : 完了時に呼び出されるコールバック。
この値が null になることはありません。 |