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 |
String
|
getClientPackageName()
Gibt den Paketnamen der Client-App zurück. |
SharedPreferences
|
getClientSharedPreferences()
Gibt |
List<SandboxedSdk>
|
getSandboxedSdks()
Ruft Informationen über SDKs ab, die in der Sandbox geladen werden. |
void
|
loadSdk(String sdkName, Bundle params, Executor executor, OutcomeReceiver<SandboxedSdk, LoadSdkException> receiver)
Lädt das SDK in einen SDK-Sandbox-Java-Prozess. |
IBinder
|
registerSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)
Gibt eine Kennung für eine |
void
|
unregisterSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)
Melden Sie sich von einem bereits registrierten |
Übernommene Methoden | |
---|---|
Konstanten
SDK_SANDBOX_CONTROLLER_SERVICE
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
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
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<SandboxedSdk, LoadSdkException> 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
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
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. |