SandboxedSdk
public
final
class
SandboxedSdk
extends Object
implements
Parcelable
java.lang.Object | |
↳ | android.app.sdksandbox.SandboxedSdk |
Represents an SDK loaded in the sandbox process.
Returned in response to SdkSandboxManager#loadSdk
, on success. An application can
obtain it by calling SdkSandboxManager#loadSdk
. It should use this object to obtain an
interface to the SDK through getInterface()
.
The SDK should create it when SandboxedSdkProvider#onLoadSdk
is called, and drop all
references to it when SandboxedSdkProvider#beforeUnloadSdk()
is called. Additionally, the
SDK should fail calls made to the IBinder
returned from getInterface()
after
SandboxedSdkProvider#beforeUnloadSdk()
has been called.
Summary
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Creator<SandboxedSdk> |
CREATOR
|
Public constructors | |
---|---|
SandboxedSdk(IBinder sdkInterface)
Creates a |
Public methods | |
---|---|
int
|
describeContents()
Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
IBinder
|
getInterface()
Returns the interface to the SDK that was loaded in response to |
SharedLibraryInfo
|
getSharedLibraryInfo()
Returns the |
void
|
writeToParcel(Parcel dest, int flags)
Flatten this object in to a Parcel. |
Inherited methods | |
---|---|
Fields
CREATOR
public static final Creator<SandboxedSdk> CREATOR
Public constructors
SandboxedSdk
public SandboxedSdk (IBinder sdkInterface)
Creates a SandboxedSdk
object.
Parameters | |
---|---|
sdkInterface |
IBinder : The SDK's interface. This will be the entrypoint into the sandboxed SDK
for the application. The SDK should keep this valid until it's loaded in the sandbox, and
start failing calls to this interface once it has been unloaded.
This interface can later be retrieved using |
Public methods
describeContents
public int describeContents ()
Describe the kinds of special objects contained in this Parcelable
instance's marshaled representation. For example, if the object will
include a file descriptor in the output of writeToParcel(android.os.Parcel, int)
,
the return value of this method must include the
CONTENTS_FILE_DESCRIPTOR
bit.
Returns | |
---|---|
int |
a bitmask indicating the set of special object types marshaled
by this Parcelable object instance.
Value is either 0 or CONTENTS_FILE_DESCRIPTOR |
getInterface
public IBinder getInterface ()
Returns the interface to the SDK that was loaded in response to SdkSandboxManager.loadSdk(String, Bundle, Executor, OutcomeReceiver)
. A null
interface is returned if the Binder has since
become unavailable, in response to the SDK being unloaded.
Returns | |
---|---|
IBinder |
getSharedLibraryInfo
public SharedLibraryInfo getSharedLibraryInfo ()
Returns the SharedLibraryInfo
for the SDK.
Returns | |
---|---|
SharedLibraryInfo |
This value cannot be null . |
Throws | |
---|---|
IllegalStateException |
if the system service has not yet attached SharedLibraryInfo to the SandboxedSdk object sent by the SDK. |
writeToParcel
public void writeToParcel (Parcel dest, int flags)
Flatten this object in to a Parcel.
Parameters | |
---|---|
dest |
Parcel : This value cannot be null . |
flags |
int : Additional flags about how the object should be written.
May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE .
Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE , and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES |