IsolatedService

public abstract class IsolatedService
extends Service

java.lang.Object
   ↳ android.content.Context
     ↳ android.content.ContextWrapper
       ↳ android.app.Service
         ↳ android.adservices.ondevicepersonalization.IsolatedService


Klasa podstawowa usług uruchamianych przez ODP w wyniku wywołania funkcji OnDevicePersonalizationManager#execute(ComponentName, PersistableBundle, java.util.concurrent.Executor, OutcomeReceiver) i uruchamianych w oddzielnym procesie. Usługa może generować treści do wyświetlenia w aplikacji wywołującej SurfaceView i zapisywać trwałe wyniki w pamięci urządzenia. Mogą one być wykorzystywane przez federowane usługi analityczne do analizy statystycznej na wielu urządzeniach lub przez federowane uczenie do trenowania modelu. Aplikacje klienckie używają OnDevicePersonalizationManager do interakcji z usługą IsolatedService.

Podsumowanie

Stałe odziedziczone

Konstruktory publiczne

IsolatedService()

Metody publiczne

final EventUrlProvider getEventUrlProvider(RequestToken requestToken)

Zwraca EventUrlProvider dla bieżącego żądania.

final FederatedComputeScheduler getFederatedComputeScheduler(RequestToken requestToken)

Zwraca FederatedComputeScheduler dla bieżącego żądania.

final MutableKeyValueStore getLocalData(RequestToken requestToken)

Zwraca obiekt umożliwiający dostęp do danych w przypadku tabeli LOCAL_DATA.

final LogReader getLogReader(RequestToken requestToken)

Zwraca DAO dla tabel REQUESTS i EVENTS, które zapewnia dostęp do wierszy, które są czytelne dla IsolatedService.

final KeyValueStore getRemoteData(RequestToken requestToken)

Zwraca obiekt umożliwiający dostęp do danych w przypadku tabeli REMOTE_DATA.

final UserData getUserData(RequestToken requestToken)

Zwraca wartość UserData dostarczoną przez platformę dla bieżącego żądania.

IBinder onBind(Intent intent)

Obsługuje wiązanie z IsolatedService.

void onCreate()

Tworzy wiązarkę dla IsolatedService.

abstract IsolatedWorker onRequest(RequestToken requestToken)

Zwraca instancję IsolatedWorker, która obsługuje żądania klientów.

Metody dziedziczone

Konstruktory publiczne

IsolatedService

public IsolatedService ()

Metody publiczne

getEventUrlProvider

public final EventUrlProvider getEventUrlProvider (RequestToken requestToken)

Zwraca EventUrlProvider dla bieżącego żądania. W sekcji EventUrlProvider znajdują się adresy URL, które można umieszczać w HTML. Gdy kod HTML jest renderowany w ramach WebView, platforma przechwytuje żądania dotyczące tych adresów URL i wywołuje IsolatedWorker#onEvent(EventInput, Consumer).

Parametry
requestToken RequestToken: nieprzejrzysty token identyfikujący bieżące żądanie wysłane do usługi. Ta wartość nie może być null.

Zwroty
EventUrlProvider EventUrlProvider, który zwraca adresy URL śledzenia zdarzeń. Ta wartość nie może być null.

getFederatedComputeScheduler

public final FederatedComputeScheduler getFederatedComputeScheduler (RequestToken requestToken)

Zwraca FederatedComputeScheduler dla bieżącego żądania. Za pomocą funkcji FederatedComputeScheduler można planować i anulować zadania obliczeniowe w ramach federacji. Sfederowane obliczenia obejmują sfederowane uczenie się i zadania analizy sfederowanej.

Parametry
requestToken RequestToken: nieprzejrzysty token identyfikujący bieżące żądanie wysłane do usługi. Ta wartość nie może być null.

Zwroty
FederatedComputeScheduler FederatedComputeScheduler zwraca harmonogram zadań federacyjnego przetwarzania. Ta wartość nie może być null.

getLocalData

public final MutableKeyValueStore getLocalData (RequestToken requestToken)

Zwraca obiekt dostępu do danych dla tabeli LOCAL_DATA. Tabela LOCAL_DATA to trwały magazyn klucz-wartość, którego usługa może używać do przechowywania dowolnych danych. Zawartość tej tabeli jest widoczna tylko dla usługi uruchomionej w izolowanym procesie i nie można jej wysłać poza urządzenie.

Parametry
requestToken RequestToken: nieprzejrzysty token identyfikujący bieżące żądanie wysłane do usługi. Ta wartość nie może być null.

Zwroty
MutableKeyValueStore Obiekt MutableKeyValueStore, który zapewnia dostęp do tabeli LOCAL_DATA. Metody w zwróconym obiekcie MutableKeyValueStore blokują operacje i powinny być wywoływane z wątku roboczego, a nie z wątku głównego ani wątku powiązania. Ta wartość nie może być null.

getLogReader

public final LogReader getLogReader (RequestToken requestToken)

Zwraca identyfikator DAO dla tabel REQUESTS i EVENTS, który zapewnia dostęp do wierszy, które są odczytywane przez usługę IsolatedService.

Parametry
requestToken RequestToken: nieprzejrzysty token identyfikujący bieżące żądanie wysłane do usługi. Ta wartość nie może być null.

Zwroty
LogReader Obiekt LogReader, który zapewnia dostęp do tabel REQUESTS i EVENTS. Metody zwracane przez LogReader blokują operacje i powinny być wywoływane z wątku roboczego, a nie z wątku głównego ani z wątku bindera. Ta wartość nie może być null.

getRemoteData

public final KeyValueStore getRemoteData (RequestToken requestToken)

Zwraca obiekt dostępu do danych dla tabeli REMOTE_DATA. Tabela REMOTE_DATA to magazyn klucz-wartość tylko do odczytu, który zawiera dane, które są okresowo pobierane z punktu końcowego zadeklarowanego w tagu w pliku manifestu ODP usługi, jak pokazano w poniższym przykładzie.

<!-- Contents of res/xml/OdpSettings.xml -->
 <on-device-personalization>
 <!-- Name of the service subclass -->
 <service "com.example.odpsample.SampleService">
   <!-- If this tag is present, ODP will periodically poll this URL and
    download content to populate REMOTE_DATA. Adopters that do not need to
    download content from their servers can skip this tag. -->
   <download-settings url="https://example.com/get" />
 </service>
 </on-device-personalization>
 

Parametry
requestToken RequestToken: nieprzejrzysty token identyfikujący bieżące żądanie wysłane do usługi. Ta wartość nie może być null.

Zwroty
KeyValueStore Obiekt KeyValueStore, który zapewnia dostęp do tabeli REMOTE_DATA. Metody zwracane przez KeyValueStore blokują operacje i powinny być wywoływane z wątku roboczego, a nie z wątku głównego ani z wątku bindera. Ta wartość nie może być null.

getUserData

public final UserData getUserData (RequestToken requestToken)

Zwraca UserData udostępniony przez platformę dla bieżącego żądania.

Parametry
requestToken RequestToken: nieprzejrzysty token identyfikujący bieżące żądanie wysłane do usługi. Ta wartość nie może być null.

Zwroty
UserData Obiekt UserData. Ta wartość może wynosić null.

onBind

public IBinder onBind (Intent intent)

obsługuje wiązanie z IsolatedService.

Parametry
intent Intent: intencja, która została użyta do powiązania z tą usługą, podana w usłudze Context.bindService. Pamiętaj, że żadne dodatki zawarte w tym momencie w intencji nie będą tutaj widoczne. Ta wartość nie może być null.

Zwroty
IBinder Ta wartość może wynosić null.

onCreate

public void onCreate ()

Tworzy wiązarkę dla IsolatedService.

onRequest

public abstract IsolatedWorker onRequest (RequestToken requestToken)

Zwraca instancję IsolatedWorker, która obsługuje żądania klientów.

Parametry
requestToken RequestToken: nieprzezroczysty token, który identyfikuje bieżące żądanie wysłane do usługi. Musi być przekazywany do metod usługi, które zależą od stanu poszczególnych żądań. Ta wartość nie może być null.

Zwroty
IsolatedWorker Ta wartość nie może być null.