Service isolé

public abstract class IsolatedService
extends Service

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


Classe de base pour les services démarrés par l'ODP lors d'un appel vers OnDevicePersonalizationManager#execute(ComponentName, PersistableBundle, java.util.concurrent.Executor, OutcomeReceiver) et s'exécuter dans un environnement isolé processus. Le service peut produire du contenu à afficher dans un SurfaceView dans une application appelante et écrire les résultats persistants sur l'appareil que Federated Analytics peut utiliser à des fins d'analyse statistique par l'apprentissage fédéré pour entraîner des modèles. Les applications clientes utilisent OnDevicePersonalizationManager pour interagir avec un IsolatedService.

Résumé

Constantes héritées

Constructeurs publics

IsolatedService()

Méthodes publiques

final EventUrlProvider getEventUrlProvider(RequestToken requestToken)

Renvoie un EventUrlProvider pour la requête actuelle.

final FederatedComputeScheduler getFederatedComputeScheduler(RequestToken requestToken)

Renvoie un FederatedComputeScheduler pour la requête actuelle.

final MutableKeyValueStore getLocalData(RequestToken requestToken)

Renvoie un objet d'accès aux données pour la table LOCAL_DATA.

final LogReader getLogReader(RequestToken requestToken)

Renvoie un DAO pour les tables REQUESTS et EVENTS qui fournissent accès aux lignes lisibles par IsolatedService.

final KeyValueStore getRemoteData(RequestToken requestToken)

Renvoie un objet d'accès aux données pour la table REMOTE_DATA.

final UserData getUserData(RequestToken requestToken)

Renvoie le UserData fourni par la plate-forme pour la requête actuelle.

IBinder onBind(Intent intent)

Gère la liaison à IsolatedService.

void onCreate()

Crée une liaison pour un IsolatedService.

abstract IsolatedWorker onRequest(RequestToken requestToken)

Renvoyez une instance d'IsolatedWorker qui gère les requêtes des clients.

Méthodes héritées

Constructeurs publics

Service isolé

public IsolatedService ()

Méthodes publiques

getEventUrlProvider

public final EventUrlProvider getEventUrlProvider (RequestToken requestToken)

Renvoie un EventUrlProvider pour la requête actuelle. EventUrlProvider fournit des URL qui peuvent être intégrées en HTML. Lorsque le code HTML est affiché dans un WebView : la plate-forme intercepte les requêtes adressées à ces URL et appelle IsolatedWorker#onEvent(EventInput, Consumer)

Paramètres
requestToken RequestToken: jeton opaque qui identifie la requête actuelle adressée au service. Cette valeur ne peut pas être null.

Renvoie
EventUrlProvider Élément EventUrlProvider qui renvoie des URL de suivi des événements. Cette valeur ne peut pas être null.

Voir aussi :

getFederatedComputeScheduler

public final FederatedComputeScheduler getFederatedComputeScheduler (RequestToken requestToken)

Renvoie un FederatedComputeScheduler pour la requête actuelle. Le FederatedComputeScheduler peut être utilisé pour planifier et annuler des tâches de calcul fédérées. La le calcul fédéré inclut l'apprentissage fédéré et les tâches d'analyse fédérée.

Paramètres
requestToken RequestToken: jeton opaque qui identifie la requête actuelle adressée au service. Cette valeur ne peut pas être null.

Renvoie
FederatedComputeScheduler Une fonction FederatedComputeScheduler qui renvoie une tâche de calcul fédérée programmeur. Cette valeur ne peut pas être null.

Voir aussi :

getLocalData

public final MutableKeyValueStore getLocalData (RequestToken requestToken)

Renvoie un objet d'accès aux données pour la table LOCAL_DATA. La table LOCAL_DATA est une table clé-valeur que le service peut utiliser pour stocker n'importe quelle donnée. Le contenu de ce tableau est visible uniquement par le service s'exécutant dans un processus isolé et ne peut pas être envoyée en dehors appareil.

Paramètres
requestToken RequestToken: jeton opaque qui identifie la requête actuelle adressée au service. Cette valeur ne peut pas être null.

Renvoie
MutableKeyValueStore Un objet MutableKeyValueStore qui permet d'accéder à la table LOCAL_DATA. Les méthodes du MutableKeyValueStore renvoyé bloquent des opérations et doit être appelé à partir d'un thread de nœud de calcul et non du thread principal ou d'un thread de liaison. Cette valeur ne peut pas être null.

Voir aussi :

getLogReader

public final LogReader getLogReader (RequestToken requestToken)

Renvoie un DAO pour les tables REQUESTS et EVENTS qui fournissent accès aux lignes lisibles par IsolatedService.

Paramètres
requestToken RequestToken: jeton opaque qui identifie la requête actuelle adressée au service. Cette valeur ne peut pas être null.

Renvoie
LogReader Un objet LogReader qui donne accès aux tables REQUESTS et EVENTS. Les méthodes du LogReader renvoyé bloquent des opérations et doit être appelé à partir d'un thread de nœud de calcul et non du thread principal ou d'un thread de liaison. Cette valeur ne peut pas être null.

Voir aussi :

getRemoteData

public final KeyValueStore getRemoteData (RequestToken requestToken)

Renvoie un objet d'accès aux données pour la table REMOTE_DATA. La table REMOTE_DATA est en lecture seule magasin de paires clé-valeur qui contient des données téléchargées régulièrement à partir d'un point de terminaison déclaré dans le tag du fichier manifeste ODP du service, comme illustré dans l'exemple suivant.

<!-- 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>
 

Paramètres
requestToken RequestToken: jeton opaque qui identifie la requête actuelle adressée au service. Cette valeur ne peut pas être null.

Renvoie
KeyValueStore Un objet KeyValueStore qui permet d'accéder à la table REMOTE_DATA. La dans le KeyValueStore renvoyé constituent des opérations bloquantes et doivent être appelé à partir d'un thread de nœud de calcul et non du thread principal ou d'un thread de liaison. Cette valeur ne peut pas être null.

Voir aussi :

ObtenirDonnéesUtilisateur

public final UserData getUserData (RequestToken requestToken)

Renvoie le UserData fourni par la plate-forme pour la requête actuelle.

Paramètres
requestToken RequestToken: jeton opaque qui identifie la requête actuelle adressée au service. Cette valeur ne peut pas être null.

Renvoie
UserData Un objet UserData. Cette valeur peut être null.

Voir aussi :

onBind

public IBinder onBind (Intent intent)

Gère la liaison à IsolatedService.

Paramètres
intent Intent: intent utilisé pour s'associer à ce service, tel qu'indiqué à Context.bindService. Notez que tous les extras inclus dans l'intent à ce stade ne seront pas vus ici. Cette valeur ne peut pas être null.

Renvoie
IBinder Cette valeur peut être null.

onCreate

public void onCreate ()

Crée une liaison pour un IsolatedService.

onRequest

public abstract IsolatedWorker onRequest (RequestToken requestToken)

Renvoyez une instance d'IsolatedWorker qui gère les requêtes des clients.

Paramètres
requestToken RequestToken: jeton opaque qui identifie la requête en cours auprès du service qui doivent être transmises aux méthodes de service qui dépendent de l'état de chaque requête. Cette valeur ne peut pas être null.

Valeur affichée
IsolatedWorker Cette valeur ne peut pas être null.