Gestionnaire de bac à sable sdk

public final class SdkSandboxManager
extends Object

java.lang.Object
   ↳ android.app.sdksandbox.SdkSandboxManager


Fournit des API permettant de charger SDKs dans le du bac à sable du SDK, puis interagir avec elles.

Le bac à sable du SDK est un processus Java s'exécutant dans une plage d'UID distincte. Chaque application peut avoir son propre SDK de bac à sable.

L'application doit d'abord déclarer les SDK dont elle dépend dans son fichier manifeste à l'aide de la balise <uses-sdk-library>. Les applications ne peuvent charger que les SDK dont elles dépendent dans le bac à sable du SDK.

Résumé

Classes imbriquées

interface SdkSandboxManager.SdkSandboxProcessDeathCallback

Rappel pour suivre les événements de la mort du bac à sable du SDK. 

Constantes

String EXTRA_DISPLAY_ID

Nom de la clé à utiliser dans les champs de bundle de requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur doit définir l'ID sous forme d'entier de l'opérateur logique display pour afficher SurfacePackage.

String EXTRA_HEIGHT_IN_PIXELS

Nom de la clé à utiliser dans les champs "Groupe" de requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur doit définir la hauteur entière de SurfacePackage en pixels.

String EXTRA_HOST_TOKEN

Nom de la clé à utiliser dans les champs de bundle de requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur doit correspondre au jeton renvoyé par SurfaceView.getHostToken() une fois que SurfaceView a été à la hiérarchie des vues.

String EXTRA_SURFACE_PACKAGE

Nom de la clé dans le bundle transmis à la fonction onResult de OutcomeReceiver, qui est le champ requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur présente la SurfacePackage demandée.

String EXTRA_WIDTH_IN_PIXELS

Nom de la clé à utiliser dans les champs "Groupe" de requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur doit définir la largeur entière de SurfacePackage en pixels.

int LOAD_SDK_ALREADY_LOADED

Le SDK est déjà chargé.

int LOAD_SDK_INTERNAL_ERROR

Erreur interne lors du chargement du SDK.

int LOAD_SDK_NOT_FOUND

SDK introuvable.

int LOAD_SDK_SDK_DEFINED_ERROR

Erreur du SDK après le chargement.

int LOAD_SDK_SDK_SANDBOX_DISABLED

Le bac à sable du SDK est désactivé.

int REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR

Une erreur interne s'est produite lors de la demande d'un SurfacePackage.

int REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED

Le SDK n'est pas chargé lorsque vous demandez un SurfacePackage.

int SDK_SANDBOX_PROCESS_NOT_AVAILABLE

Le processus de bac à sable du SDK n'est pas disponible.

String SDK_SANDBOX_SERVICE

Utiliser avec Context#getSystemService(String) pour récupérer un SdkSandboxManager pour interagir avec les SDK appartenant à cette application cliente.

int SDK_SANDBOX_STATE_DISABLED

Le bac à sable du SDK est désactivé.

int SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

Le bac à sable du SDK est activé.

Méthodes publiques

void addSdkSandboxProcessDeathCallback(Executor callbackExecutor, SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

Ajout d'un rappel qui est enregistré pour les événements de cycle de vie du bac à sable du SDK, tels que le bac à sable du SDK la mort.

void addSyncedSharedPreferencesKeys(Set<String> keys)

Ajoute des clés à l'ensemble de clés en cours de synchronisation depuis le SharedPreferences par défaut de l'application vers le SDK dans l'environnement de bac à sable.

List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces()

Extrait la liste des AppOwnedSdkSandboxInterface enregistrés pour une application

List<SandboxedSdk> getSandboxedSdks()

Extrait des informations sur les SDK chargés dans le bac à sable.

static int getSdkSandboxState()

Renvoie l'état actuel de la disponibilité de la fonctionnalité de bac à sable du SDK.

Set<String> getSyncedSharedPreferencesKeys()

Renvoie les clés définies qui sont synchronisées depuis la SharedPreferences par défaut de l'application vers le bac à sable du SDK.

void loadSdk(String sdkName, Bundle params, Executor executor, OutcomeReceiver<SandboxedSdkLoadSdkException> receiver)

Charge le SDK dans un processus Java du bac à sable du SDK.

void registerAppOwnedSdkSandboxInterface(AppOwnedSdkSandboxInterface appOwnedSdkSandboxInterface)

Enregistre AppOwnedSdkSandboxInterface pour un processus d'application.

void removeSdkSandboxProcessDeathCallback(SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

Supprime un SdkSandboxProcessDeathCallback précédemment ajouté à l'aide de addSdkSandboxProcessDeathCallback(java.util.concurrent.Executor, android.app.sdksandbox.SdkSandboxManager.SdkSandboxProcessDeathCallback)

void removeSyncedSharedPreferencesKeys(Set<String> keys)

Supprime les clés de l'ensemble de clés ajouté à l'aide de addSyncedSharedPreferencesKeys(java.util.Set)

Les clés supprimées seront effacées du bac à sable du SDK si elles ont déjà été synchronisées.

void requestSurfacePackage(String sdkName, Bundle params, Executor callbackExecutor, OutcomeReceiver<BundleRequestSurfacePackageException> receiver)

Elle envoie une requête de package de surface au SDK.

void startSdkSandboxActivity(Activity fromActivity, IBinder sdkActivityToken)

Démarre une Activity dans le bac à sable du SDK.

void unloadSdk(String sdkName)

Décharge un SDK précédemment chargé par l'appelant.

void unregisterAppOwnedSdkSandboxInterface(String name)

Annule l'enregistrement de ERROR(/AppOwnedSdkSandboxInterfaces) dans un processus d'application.

Méthodes héritées

Constantes

EXTRA_DISPLAY_ID (ID : EXTRA_DISPLAY_ID)

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final String EXTRA_DISPLAY_ID

Nom de la clé à utiliser dans les champs de bundle de requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur doit définir l'ID sous forme d'entier de l'opérateur logique display pour afficher SurfacePackage.

Valeur constante: "android.app.sdksandbox.extra.DISPLAY_ID"

EXTRA_HEIGHT_IN_PIXELS

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final String EXTRA_HEIGHT_IN_PIXELS

Nom de la clé à utiliser dans les champs "Groupe" de requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur doit définir la hauteur entière de SurfacePackage en pixels.

Valeur constante: "android.app.sdksandbox.extra.HEIGHT_IN_PIXELS"

EXTRA_HOST_TOKEN

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final String EXTRA_HOST_TOKEN

Nom de la clé à utiliser dans les champs de bundle de requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur doit correspondre au jeton renvoyé par SurfaceView.getHostToken() une fois que SurfaceView a été à la hiérarchie des vues. Seule une valeur non nulle est acceptée pour activer les rapports ANR.

Valeur constante: "android.app.sdksandbox.extra.HOST_TOKEN"

EXTRA_SURFACE_PACKAGE

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final String EXTRA_SURFACE_PACKAGE

Nom de la clé dans le bundle transmis à la fonction onResult de OutcomeReceiver, qui est le champ requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur présente la SurfacePackage demandée.

Valeur constante: "android.app.sdksandbox.extra.SURFACE_PACKAGE"

EXTRA_WIDTH_IN_PIXELS

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final String EXTRA_WIDTH_IN_PIXELS

Nom de la clé à utiliser dans les champs "Groupe" de requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver). Sa valeur doit définir la largeur entière de SurfacePackage en pixels.

Valeur constante: "android.app.sdksandbox.extra.WIDTH_IN_PIXELS"

LOAD_SDK_ALREADY_LOADED.

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final int LOAD_SDK_ALREADY_LOADED

Le SDK est déjà chargé.

Cela indique que l'application cliente a tenté d'actualiser le même SDK en appelant loadSdk(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) après avoir été chargement réussi.

Valeur constante: 101 (0x00000065)

LOAD_SDK_INTERNAL_ERROR (Erreur interne du SDK)

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final int LOAD_SDK_INTERNAL_ERROR

Erreur interne lors du chargement du SDK.

Cela indique qu'une erreur interne générique s'est produite lors de l'application de l'appel à partir du client application.

Valeur constante: 500 (0x000001f4)

LOAD_SDK_NOT_FOUND

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final int LOAD_SDK_NOT_FOUND

SDK introuvable.

Cela indique que l'application cliente a tenté de charger un SDK inexistant en appelant loadSdk(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver).

Valeur constante: 100 (0x00000064)

LOAD_SDK_SDK_DEFINED_ERROR

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final int LOAD_SDK_SDK_DEFINED_ERROR

Erreur du SDK après le chargement.

Cela indique que le SDK a rencontré une erreur lors de l'initialisation après le chargement. La Vous pouvez obtenir plus d'informations à ce sujet dans le bundle renvoyé dans LoadSdkException jusqu'au OutcomeReceiver transmis à SdkSandboxManager#loadSdk.

Valeur constante: 102 (0x00000066)

LOAD_SDK_SDK_SANDBOX_DISABLED (CHARGE_SDK_SDK_SANDBOX_DISABLED)

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final int LOAD_SDK_SDK_SANDBOX_DISABLED

Le bac à sable du SDK est désactivé.

Cela indique que le bac à sable du SDK est désactivé. Toute tentative ultérieure de chargement des SDK ce démarrage échouera également.

Valeur constante: 103 (0x00000067)

REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final int REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR

Une erreur interne s'est produite lors de la demande d'un SurfacePackage.

Cela indique qu'une erreur interne générique s'est produite lors de la demande d'un SurfacePackage

Valeur constante: 700 (0x000002bc)

REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED (demande du SDK non chargée)

Ajouté au niveau d'API 34
Également disponible dans la section Extensions de services publicitaires 5
public static final int REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED

Le SDK n'est pas chargé lorsque vous demandez un SurfacePackage.

Cela indique que le SDK pour lequel la SurfacePackage est demandée n'est pas soit parce que le bac à sable est mort, soit parce qu’il n’a pas été chargé en premier lieu.

Valeur constante: 701 (0x000002bd)

SDK_SANDBOX_PROCESS_NOT_AVAILABLE

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final int SDK_SANDBOX_PROCESS_NOT_AVAILABLE

Le processus de bac à sable du SDK n'est pas disponible.

Cela indique que le processus de bac à sable du SDK n'est pas disponible, soit parce qu'il a expiré, déconnectés ou n’a pas été créé en premier lieu.

Valeur constante: 503 (0x000001f7)

SDK_SANDBOX_SERVICE

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public static final String SDK_SANDBOX_SERVICE

Utilisez cette option avec Context#getSystemService(String) pour récupérer un SdkSandboxManager. pour interagir avec les SDK appartenant à cette application cliente.

Valeur constante: "sdk_sandbox"

SDK_SANDBOX_STATE_DISABLED

Ajouté au niveau d'API 33
Également disponible dans la section Extensions de services publicitaires 3
public static final int SDK_SANDBOX_STATE_DISABLED

Le bac à sable du SDK est désactivé.

SdkSandboxManager API sont masquées. Les tentatives d'appel aboutissent à une UnsupportedOperationException.

Valeur constante : 0 (0x00000000)

SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

Ajouté au niveau d'API 33
Également disponible dans la section Extensions de services publicitaires 3
public static final int SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

Le bac à sable du SDK est activé.

L'application peut utiliser les API SdkSandboxManager pour charger les SDKs dont elle dépend dans la le processus de bac à sable du SDK correspondant.

Valeur constante: 2. (0x00000002)

Méthodes publiques

addSdkSandboxProcessDeathCallback

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public void addSdkSandboxProcessDeathCallback (Executor callbackExecutor, 
                SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

Ajout d'un rappel qui est enregistré pour les événements de cycle de vie du bac à sable du SDK, tels que le bac à sable du SDK la mort. Si le bac à sable n'a pas encore été créé lorsque cette méthode est appelée, la demande est jusqu'à ce qu'un bac à sable soit créé, auquel cas il est activé pour ce bac à sable. Multiples Des rappels peuvent être ajoutés pour détecter un décès et ne seront pas supprimés à l'arrêt du bac à sable.

Paramètres
callbackExecutor Executor: Executor sur lequel appeler le rappel. Cette valeur ne peut pas être null. Les événements de rappel et d'écouteur sont envoyés via Executor, ce qui permet de contrôler facilement le thread qui est utilisé. Pour envoyer des événements via le thread principal de votre vous pouvez utiliser Context.getMainExecutor() Sinon, fournissez un Executor qui sera envoyé à un thread approprié.

callback SdkSandboxManager.SdkSandboxProcessDeathCallback: SdkSandboxProcessDeathCallback qui recevra le bac à sable du SDK des événements de cycle de vie. Cette valeur ne peut pas être null.

addSyncedSharedPreferencesKeys

Ajouté au niveau d'API 34
Également disponible dans la section Extensions de services publicitaires 5
public void addSyncedSharedPreferencesKeys (Set<String> keys)

Ajoute des clés à l'ensemble de clés en cours de synchronisation depuis le SharedPreferences par défaut de l'application vers le SDK dans l'environnement de bac à sable.

Les SDK pourront lire les données synchronisées à l'aide de l'API SdkSandboxController.getClientSharedPreferences().

Pour arrêter la synchronisation d'une clé ajoutée à l'aide de cette API, utilisez removeSyncedSharedPreferencesKeys(java.util.Set).

La synchronisation est interrompue si l'application redémarre et que l'utilisateur doit appeler à nouveau cette API pour recréer le pool clés pour la synchronisation.

Remarque: Cette classe ne permet pas d'utiliser plusieurs processus.

Paramètres
keys Set: ensemble de clés qui sera synchronisé avec le bac à sable. Cette valeur ne peut pas être null.

getAppOwnedSdkSandboxInterfaces

public List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces ()

Extrait la liste des AppOwnedSdkSandboxInterface enregistrés pour une application

Renvoie
List<AppOwnedSdkSandboxInterface> Liste vide si appelantInfo est introuvable dans le mappage ou liste AppOwnedSdkSandboxInterface Cette valeur ne peut pas être null.

getSandboxedSdks

Ajouté au niveau d'API 34
Également disponible dans la section Extensions de services publicitaires 5
public List<SandboxedSdk> getSandboxedSdks ()

Extrait des informations sur les SDK chargés dans le bac à sable.

Renvoie
List<SandboxedSdk> Liste de SandboxedSdk contenant tous les SDK actuellement chargés. Cette valeur ne peut pas être null.

getSdkSandboxState

Ajouté au niveau d'API 33
Également disponible dans la section Extensions de services publicitaires 3
public static int getSdkSandboxState ()

Renvoie l'état actuel de la disponibilité de la fonctionnalité de bac à sable du SDK.

Renvoie
int La valeur est SDK_SANDBOX_STATE_DISABLED ou SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

getSyncedSharedPreferencesKeys

Ajouté au niveau d'API 34
Également disponible dans la section Extensions de services publicitaires 5
public Set<String> getSyncedSharedPreferencesKeys ()

Renvoie les clés définies qui sont synchronisées depuis la SharedPreferences par défaut de l'application vers le bac à sable du SDK.

Renvoie
Set<String> Cette valeur ne peut pas être null.

chargeSdk

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public void loadSdk (String sdkName, 
                Bundle params, 
                Executor executor, 
                OutcomeReceiver<SandboxedSdkLoadSdkException> receiver)

Charge le SDK dans un processus Java du bac à sable du SDK.

Charge de manière asynchrone la bibliothèque du SDK avec sdkName dans un processus de bac à sable du SDK. La l'appelant sera averti via le receiver.

L'appelant doit déjà déclarer SDKs dont il dépend dans son fichier manifeste à l'aide de la balise <uses-sdk-library>. L'appelant ne peut charger que les SDKs dont il dépend dans le SDK dans l'environnement de bac à sable.

Lorsque l'application cliente charge le premier SDK, un nouveau processus de bac à sable du SDK créé. Si un bac à sable a déjà été créé pour l'application cliente, des SDK supplémentaires sera chargé dans le même bac à sable.

Cette API ne peut être appelée que lorsque l'appelant s'exécute au premier plan. Appels du en arrière-plan renverra LoadSdkException dans receiver.

Paramètres
sdkName String: nom du SDK à charger. Cette valeur ne peut pas être null.

params Bundle: paramètres supplémentaires à transmettre au SDK sous la forme d'un Bundle. comme convenu entre le client et le SDK. Cette valeur ne peut pas être null.

executor Executor: Executor sur lequel appeler le récepteur. Cette valeur ne peut pas être null. Les événements de rappel et d'écouteur sont envoyés via Executor, ce qui permet de contrôler facilement le thread qui est utilisé. Pour envoyer des événements via le thread principal de votre vous pouvez utiliser Context.getMainExecutor() Sinon, fournissez un Executor qui sera envoyé à un thread approprié.

receiver OutcomeReceiver: reçoit soit une SandboxedSdk lors d'une exécution réussie, soit une LoadSdkException. Cette valeur ne peut pas être null.

RegisterAppOwnedSdkSandboxInterface

public void registerAppOwnedSdkSandboxInterface (AppOwnedSdkSandboxInterface appOwnedSdkSandboxInterface)

Enregistre AppOwnedSdkSandboxInterface pour un processus d'application.

Enregistrer un AppOwnedSdkSandboxInterface portant le même nom qu'un précédent l'interface enregistrée renvoie IllegalStateException.

AppOwnedSdkSandboxInterface#getName() fait référence au nom de l'interface.

Paramètres
appOwnedSdkSandboxInterface AppOwnedSdkSandboxInterface: AppOwnedSdkSandboxInterface à enregistrer Cette valeur ne peut pas être null.

removeSdkSandboxProcessDeathCallback

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public void removeSdkSandboxProcessDeathCallback (SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

Supprime un SdkSandboxProcessDeathCallback précédemment ajouté à l'aide de addSdkSandboxProcessDeathCallback(java.util.concurrent.Executor, android.app.sdksandbox.SdkSandboxManager.SdkSandboxProcessDeathCallback)

Paramètres
callback SdkSandboxManager.SdkSandboxProcessDeathCallback: le SdkSandboxProcessDeathCallback qui a été ajouté précédemment à l'aide de SdkSandboxManager#addSdkSandboxProcessDeathCallback(Executor, SdkSandboxProcessDeathCallback) Cette valeur ne peut pas être null.

removeSyncedSharedPreferencesKeys

Ajouté au niveau d'API 34
Également disponible dans la section Extensions de services publicitaires 5
public void removeSyncedSharedPreferencesKeys (Set<String> keys)

Supprime les clés de l'ensemble de clés ajouté à l'aide de addSyncedSharedPreferencesKeys(java.util.Set)

Les clés supprimées seront effacées du bac à sable du SDK si elles ont déjà été synchronisées.

Paramètres
keys Set: ensemble de noms de clés à ne plus synchroniser avec le bac à sable. Cette valeur ne peut pas être null.

Package requestSurface

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public void requestSurfacePackage (String sdkName, 
                Bundle params, 
                Executor callbackExecutor, 
                OutcomeReceiver<BundleRequestSurfacePackageException> receiver)

Envoie une requête de package de surface au SDK.

Une fois que l'application cliente a reçu un signal indiquant que le SDK a bien été chargé et a ajouté un SurfaceView à la hiérarchie des vues, il peut demander de manière asynchrone un SurfacePackage pour afficher une vue à partir du SDK.

Lorsque SurfacePackage est prêt, le rappel OutcomeReceiver#onResult de la receiver transmise est appelée. Ce rappel contiendra un Bundle qui contiendra la clé SdkSandboxManager#EXTRA_SURFACE_PACKAGE la valeur associée est la valeur SurfacePackage demandée.

Le params transmis doit contenir les clés suivantes: EXTRA_WIDTH_IN_PIXELS, SdkSandboxManager#EXTRA_HEIGHT_IN_PIXELS, SdkSandboxManager#EXTRA_DISPLAY_ID et SdkSandboxManager#EXTRA_HOST_TOKEN. Si si l'une de ces clés est manquante ou non valide, une erreur IllegalArgumentException est générée.

Cette API ne peut être appelée que lorsque l'appelant s'exécute au premier plan. Appels du en arrière-plan renvoie une exception RequestSurfacePackageException dans receiver.

Paramètres
sdkName String: nom du SDK chargé dans le bac à sable du SDK. Cette valeur ne peut pas être null.

params Bundle: paramètres que l'application cliente transmet au SDK. Cette valeur ne peut pas être null.

callbackExecutor Executor: Executor sur lequel appeler le rappel. Cette valeur ne peut pas être null. Les événements de rappel et d'écouteur sont envoyés via Executor, ce qui permet de contrôler facilement le thread qui est utilisé. Pour envoyer des événements via le thread principal de votre vous pouvez utiliser Context.getMainExecutor() Sinon, fournissez un Executor qui sera envoyé à un thread approprié.

receiver OutcomeReceiver: en cas de réussite, renvoie Bundle qui contiendra la clé. SdkSandboxManager#EXTRA_SURFACE_PACKAGE avec une valeur SurfacePackage ; ou RequestSurfacePackageException en cas d'échec. Cette valeur ne peut pas être null.

Génère
IllegalArgumentException si params ne contient pas toutes les clés requises.

startSdkSandboxActivity

Ajouté au niveau d'API 34
Également disponible dans la section Extensions de services publicitaires 7
public void startSdkSandboxActivity (Activity fromActivity, 
                IBinder sdkActivityToken)

Démarre une Activity dans le bac à sable du SDK.

Cette fonction lance un nouveau Activity dans la même tâche de l'élément fromActivity transmis et la transmet au SDK qui a partagé le sdkActivityToken transmis qui identifie une requête provenant de ce SDK pour enregistrer ce Activity.

Activity ne démarre pas dans les cas suivants:

  • L'application qui appelle cette API s'exécute en arrière-plan.
  • Le sdkActivityToken transmis ne correspond pas à une requête pour un Activity. du SDK qui l'a partagé avec l'application appelante.
  • Le SDK qui partageait l'sdkActivityToken transmis a supprimé sa demande pour cet élément Activity
  • Le bac à sable Activity a déjà été créé.

Paramètres
fromActivity Activity: le Activity sera utilisé pour démarrer le nouveau Activity de bac à sable en appelant Activity#startActivity(Intent). Cette valeur ne peut pas être null.

sdkActivityToken IBinder: identifiant partagé par le SDK qui demande le Activity. Cette valeur ne peut pas être null.

unloadSdk

Ajouté au niveau d'API 34
Également disponible dans Ad Services Extensions 4
public void unloadSdk (String sdkName)

Décharge un SDK précédemment chargé par l'appelant.

Il n'est pas garanti que la mémoire allouée pour ce SDK soit libérée immédiatement. Tout les appels suivants à requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) pour le sdkName donné échouera.

Cette API ne peut être appelée que lorsque l'appelant s'exécute au premier plan. Appels du arrière-plan entraînera la génération d'une SecurityException.

Paramètres
sdkName String: nom du SDK à décharger. Cette valeur ne peut pas être null.

unregisterAppOwnedSdkSandboxInterface

public void unregisterAppOwnedSdkSandboxInterface (String name)

Annule l'enregistrement de ERROR(/AppOwnedSdkSandboxInterfaces) dans un processus d'application.

Paramètres
name String: nom sous lequel AppOwnedSdkSandboxInterface a été enregistré. Cette valeur ne peut pas être null.