SandboxedSdkProvider
public
abstract
class
SandboxedSdkProvider
extends Object
java.lang.Object | |
↳ | android.app.sdksandbox.SandboxedSdkProvider |
Incapsula l'API che la sandbox dell'SDK può utilizzare per interagire con gli SDK caricati al suo interno.
L'SDK deve implementare questa classe astratta per generare un punto di ingresso affinché la sandbox dell'SDK possa effettuare la chiamata.
Riepilogo
Costruttori pubblici | |
---|---|
SandboxedSdkProvider()
|
Metodi pubblici | |
---|---|
final
void
|
attachContext(Context context)
Imposta l'SDK |
void
|
beforeUnloadSdk()
Il lavoro necessario all'SDK per liberare risorse prima dell'unload. |
final
Context
|
getContext()
Restituisci il valore |
abstract
View
|
getView(Context windowContext, Bundle params, int width, int height)
Richiede il rendering da remoto di una vista nel processo dell'app client. |
abstract
SandboxedSdk
|
onLoadSdk(Bundle params)
Il lavoro necessario all'SDK per iniziare a gestire le richieste. |
Metodi ereditati | |
---|---|
Costruttori pubblici
SandboxedSdkProvider
public SandboxedSdkProvider ()
Metodi pubblici
attachContext
public final void attachContext (Context context)
Imposta l'SDK Context
che può essere ricevuto utilizzando getContext()
. Questa chiamata viene chiamata prima di chiamare onLoadSdk(Bundle)
. Nessuna operazione che richiede Context
deve essere eseguita prima di questa data, poiché SandboxedSdkProvider#getContext
restituirà null fino a quando questo metodo non viene chiamato.
Genera IllegalStateException se è già stato impostato un contesto di base.
Parametri | |
---|---|
context |
Context : il nuovo contesto di base.
Questo valore non può essere null . |
beforeUnloadSdk
public void beforeUnloadSdk ()
Il lavoro necessario all'SDK per liberare risorse prima dell'unload.
Questa funzione viene richiamata dal gestore sandbox dell'SDK prima dell'unload dell'SDK. L'SDK non dovrebbe riuscire a eseguire alcuna chiamata su Binder precedentemente restituita al client tramite SandboxedSdk.getInterface()
.
L'SDK non deve eseguire attività di lunga durata qui, come chiamate di I/O e di rete.
getContext
public final Context getContext ()
Restituisci il valore Context
impostato in precedenza tramite SandboxedSdkProvider#attachContext
.
Verrà restituito un valore nullo se non è stato impostato alcun contesto in precedenza.
Ritorni | |
---|---|
Context |
getView
public abstract View getView (Context windowContext, Bundle params, int width, int height)
Richiede il rendering da remoto di una vista nel processo dell'app client.
I resi View
verranno aggregati a SurfacePackage
. il valore SurfacePackage
risultante verrà restituito all'applicazione client.
L'SDK non deve eseguire attività di lunga durata qui, come chiamate di I/O e di rete. Ciò può impedire all'SDK di ricevere richieste dal client.
Parametri | |
---|---|
windowContext |
Context : il valore Context del display che mostrava la visualizzazione
Questo valore non può essere null . |
params |
Bundle : elenco dei parametri trasmessi dall'applicazione client che richiede la visualizzazione
Questo valore non può essere null . |
width |
int : la visualizzazione restituita verrà posizionata come in una finestra di questa larghezza, in pixel. |
height |
int : la vista restituita verrà posizionata come in una finestra di questa altezza, in pixel. |
Ritorni | |
---|---|
View |
Un View che la sandbox dell'SDK passa all'applicazione client che richiede la visualizzazione
Questo valore non può essere null . |
onLoadSdk
public abstract SandboxedSdk onLoadSdk (Bundle params)
Il lavoro necessario all'SDK per iniziare a gestire le richieste.
Questa funzione viene richiamata dalla sandbox dell'SDK dopo il caricamento dell'SDK.
L'SDK dovrebbe fare tutto il possibile per essere pronto a gestire le richieste future. Non dovrebbe eseguire attività a lunga esecuzione qui, come chiamate di I/O e di rete. In questo modo puoi impedire all'SDK di ricevere richieste dal client. Inoltre, non deve eseguire l'inizializzazione che dipende da altri SDK caricati nella sandbox dell'SDK.
L'SDK non deve eseguire operazioni che richiedono un oggetto Context
prima che questo metodo sia stato chiamato.
Parametri | |
---|---|
params |
Bundle : elenco dei parametri trasmessi dal client durante il caricamento dell'SDK. Il campo può essere vuoto.
Questo valore non può essere null . |
Ritorni | |
---|---|
SandboxedSdk |
Restituisce un valore SandboxedSdk , restituito al client. L'IBinder utilizzato per creare
l'oggetto SandboxedSdk verrà utilizzato dal client per chiamare nell'SDK.
Questo valore non può essere null . |
Tiri | |
---|---|
LoadSdkException |