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)
連携コンピューティング ジョブに使用されるトレーニング サンプルを 1 つ生成する。 |
パブリック メソッド
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.ERROR_ISOLATED_SERVICE_FAILED の OnDevicePersonalizationException として呼び出し元のアプリに伝播されます。プライベート データが呼び出し元アプリに漏洩しないように、より詳細なエラーレポートは利用できません。IsolatedService がエラー統計情報をバックエンドに報告する必要がある場合は、ログにエラーデータを格納するために ExecuteOutput にエラーデータを入力し、連携分析を使用してエラーレポートを集約する必要があります。このメソッドが |
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.ERROR_ISOLATED_SERVICE_FAILED の OnDevicePersonalizationException として呼び出し元のアプリに伝播されます。このメソッドが |
onTrainingExample
public void onTrainingExample (TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
連携コンピューティング ジョブに使用されるトレーニング サンプルを 1 つ生成する。
パラメータ | |
---|---|
input |
TrainingExampleInput : トレーニング サンプルの生成に必要なパラメータ。この値が null になることはありません。 |
consumer |
Consumer : 完了時に呼び出されるコールバック。この値が null になることはありません。 |