In API-Level 34 hinzugefügt
Auch in Ad Services Extensions 5 hinzugefügt

SDKSandboxController

public class SdkSandboxController
extends Object

java.lang.Object
😎 android.app.sdksandbox.sdkprovider.SdkSandboxController


Controller, der vom SDK verwendet wird, das in der Sandbox geladen wird, um auf vom SDK bereitgestellte Informationen zuzugreifen Sandbox ausführen.

Dadurch kann das SDK mit anderen SDKs in der SDK-Sandbox kommunizieren und den Status abrufen der aktuell darin geladenen SDKs.

Eine Instanz von SdkSandboxController kann mit Context.getSystemService(Class) und class abgerufen werden. Context kann wiederum können mithilfe von SandboxedSdkProvider.getContext() abgerufen werden.

Zusammenfassung

Konstanten

String SDK_SANDBOX_CONTROLLER_SERVICE

Öffentliche Methoden

List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces()

Ruft alle AppOwnedSdkSandboxInterface ab, die von der App registriert sind.

String getClientPackageName()

Gibt den Paketnamen der Client-App zurück.

SharedPreferences getClientSharedPreferences()

Gibt SharedPreferences mit Daten zurück, die von der Client-App synchronisiert wurden.

List<SandboxedSdk> getSandboxedSdks()

Ruft Informationen über SDKs ab, die in der Sandbox geladen werden.

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

Lädt das SDK in einen SDK-Sandbox-Java-Prozess.

IBinder registerSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)

Gibt eine Kennung für eine SdkSandboxActivityHandler zurück, nachdem sie registriert wurde.

void unregisterSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)

Melden Sie sich von einem bereits registrierten SdkSandboxActivityHandler ab.

Übernommene Methoden

Konstanten

SDK_SANDBOX_CONTROLLER_SERVICE

In API-Level 34 hinzugefügt
Auch in Ad Services Extensions 5 hinzugefügt
public static final String SDK_SANDBOX_CONTROLLER_SERVICE

Konstantenwert: „sdk_sandbox_controller_service“

Öffentliche Methoden

getAppOwnedSdkSandboxInterfaces

public List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces ()

Ruft alle AppOwnedSdkSandboxInterface ab, die von der App registriert sind.

Returns
List<AppOwnedSdkSandboxInterface> Liste von AppOwnedSdkSandboxInterface mit allen derzeit registrierten AppOwnedSdkSandboxInterface. Dieser Wert darf nicht null sein.

Ausgabe
UnsupportedOperationException wenn der Controller von einer unerwarteten Kontext. SandboxedSdkProvider#getContext() für den richtigen Kontext verwenden

getClientPackageName

public String getClientPackageName ()

Gibt den Paketnamen der Client-App zurück.

Returns
String Dieser Wert darf nicht null sein.

Ausgabe
UnsupportedOperationException der Controller von einer unerwarteten Kontext. Verwenden Sie SandboxedSdkProvider#getContext() für den richtigen Kontext.

getClientSharedPreferences

In API-Level 34 hinzugefügt
Auch in Ad Services Extensions 5 hinzugefügt
public SharedPreferences getClientSharedPreferences ()

Gibt SharedPreferences mit Daten zurück, die von der Client-App synchronisiert wurden.

Schlüssel, die von der Client-App mit SdkSandboxManager.addSyncedSharedPreferencesKeys(Set) synchronisiert wurden, findest du in dieser SharedPreferences.

Die zurückgegebene SharedPreferences sollte nur gelesen werden. Es ist keine Schreibung unterstützt.

Returns
SharedPreferences SharedPreferences mit Daten, die von der Client-App synchronisiert wurden. Dieser Wert darf nicht null sein.

Ausgabe
UnsupportedOperationException der Controller von einer unerwarteten Kontext. SandboxedSdkProvider#getContext() für den richtigen Kontext verwenden

getSandboxedSdks

In API-Level 34 hinzugefügt
Auch in Ad Services Extensions 5 hinzugefügt
public List<SandboxedSdk> getSandboxedSdks ()

Ruft Informationen über SDKs ab, die in der Sandbox geladen werden.

Returns
List<SandboxedSdk> Liste mit SandboxedSdk, die alle derzeit geladenen SDKs enthält Dieser Wert darf nicht null sein.

Ausgabe
UnsupportedOperationException wenn der Controller von einer unerwarteten Kontext. SandboxedSdkProvider#getContext() für den richtigen Kontext verwenden

LoadSdk

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

Lädt das SDK in einen SDK-Sandbox-Java-Prozess.

Lädt die SDK-Bibliothek mit sdkName asynchron in einen SDK-Sandbox-Prozess. Die Der Anrufer wird über die receiver benachrichtigt.

Der Aufrufer darf nur SDKs, von denen die Client-App abhängig ist, in die SDK-Sandbox laden.

Parameter
sdkName String ist der Name des SDK, das geladen werden soll. Dieser Wert darf nicht null sein.

params Bundle: zusätzliche Parameter, die in Form eines Bundle an das SDK übergeben werden die zwischen dem Kunden und dem SDK vereinbart wurden. Dieser Wert darf nicht null sein.

executor Executor: Die Executor, auf der der Empfänger aufgerufen werden soll. Dieser Wert darf nicht null sein. Callback- und Listener-Ereignisse werden über dieses Mit Executor lässt sich ganz einfach steuern, welcher Thread verwendet. Um Ereignisse über den Hauptthread Ihres können Sie Context.getMainExecutor() Geben Sie andernfalls einen Executor an, der E-Mails an einen geeigneten Thread weiterleitet.

receiver OutcomeReceiver: Bei erfolgreicher Ausführung erhält der Befehl entweder einen SandboxedSdk-Wert oder LoadSdkException. Dieser Wert darf nicht null sein.

Ausgabe
UnsupportedOperationException der Controller von einer unerwarteten Kontext. SandboxedSdkProvider#getContext() für den richtigen Kontext verwenden

registerSdkSandboxActivityHandler

In API-Level 34 hinzugefügt
Auch in Ad Services Extensions 7 hinzugefügt
public IBinder registerSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)

Gibt eine Kennung für eine SdkSandboxActivityHandler zurück, nachdem sie registriert wurde.

Diese Funktion registriert eine Implementierung von SdkSandboxActivityHandler, die von ein SDK und gibt ein IBinder zurück, das das übergebene SdkSandboxActivityHandler-Objekt eindeutig identifiziert.

Wenn dieselbe SdkSandboxActivityHandler mehrfach registriert wurde, Beim Aufheben der Registrierung wird das gleiche IBinder-Token zurückgegeben.

Parameter
sdkSandboxActivityHandler SdkSandboxActivityHandler: ist die zu registrierende SdkSandboxActivityHandler. Dieser Wert darf nicht null sein.

Returns
IBinder IBinder identifiziert die übergebene SdkSandboxActivityHandler eindeutig. Dieser Wert darf nicht null sein.

unregisterSdkSandboxActivityHandler

In API-Level 34 hinzugefügt
Auch in Ad Services Extensions 7 hinzugefügt
public void unregisterSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)

Melden Sie sich von einem bereits registrierten SdkSandboxActivityHandler ab.

Wenn die übergebene SdkSandboxActivityHandler registriert ist, wird sie abgemeldet. Andernfalls passiert nichts.

Nach der Aufhebung der Registrierung kann das SDK dasselbe Handler-Objekt noch einmal registrieren oder ein neues Objekt erstellen. falls eine neue Activity gewünscht ist.

Wenn das IBinder-Token des nicht registrierten Handlers zum Starten eines Activity verwendet wird, Activity wird nicht gestartet.

Parameter
sdkSandboxActivityHandler SdkSandboxActivityHandler: ist die SdkSandboxActivityHandler, die abgemeldet werden soll. Dieser Wert darf nicht null sein.

Returns
void Dieser Wert darf nicht null sein.