샌드박스 처리된 SDK

public final class SandboxedSdk
extends Object implements Parcelable

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


샌드박스 프로세스에서 로드된 SDK를 나타냅니다.

성공 시 SdkSandboxManager#loadSdk에 대한 응답으로 반환됩니다. 애플리케이션은 SdkSandboxManager#loadSdk를 호출하여 가져올 수 있습니다. 이 객체를 사용하여 인터페이스를 getInterface()를 통해 SDK에 전달합니다.

SDK는 SandboxedSdkProvider#onLoadSdk가 호출될 때 이를 만들고 SandboxedSdkProvider#beforeUnloadSdk()가 호출될 때 참조됩니다. 또한 SDK는 이후에 getInterface()에서 반환된 IBinder 호출을 실패해야 합니다. SandboxedSdkProvider#beforeUnloadSdk()님이 호출되었습니다.

요약

상속된 상수

int CONTENTS_FILE_DESCRIPTOR

describeContents()와 함께 사용되는 설명자 비트: Parcelable 객체의 평면화된 표현에는 파일 설명자가 포함됩니다.

int PARCELABLE_WRITE_RETURN_VALUE

writeToParcel(Parcel, int)와 함께 사용하기 위한 플래그: 작성되는 객체는 반환 값으로, 'Parcelable someFunction()', 'void someFunction(out Parcelable)' 또는 'void someFunction(inout Parcelable)' 같은 함수의 결과입니다.

필드

public static final Creator<SandboxedSdk> CREATOR

공개 생성자

SandboxedSdk(IBinder sdkInterface)

SandboxedSdk 객체를 만듭니다.

공개 메서드

int describeContents()

이 Parcelable 인스턴스의 마셜링된 표현에 포함된 특수 객체의 종류를 설명합니다.

IBinder getInterface()

SdkSandboxManager.loadSdk(String, Bundle, Executor, OutcomeReceiver)에 대한 응답으로 로드된 SDK에 인터페이스를 반환합니다.

SharedLibraryInfo getSharedLibraryInfo()

SDK의 SharedLibraryInfo를 반환합니다.

void writeToParcel(Parcel dest, int flags)

이 객체를 Parcel에 평면화합니다.

상속된 메서드

Object clone()

이 개체의 사본을 만들어 반환합니다.

boolean equals(Object obj)

일부 다른 개체가 이 개체와 '같은'지 여부를 나타냅니다.

void finalize()

가비지 컬렉션이 더 이상 객체에 관한 참조가 없다고 판단하는 경우 객체의 가비지 컬렉터에서 호출합니다.

final Class<?> getClass()

Object의 런타임 클래스를 반환합니다.

int hashCode()

객체의 해시 코드 값을 반환합니다.

final void notify()

이 객체의 모니터에서 대기 중인 단일 스레드의 대기 모드를 해제합니다.

final void notifyAll()

이 개체의 모니터에서 대기 중인 모든 스레드의 대기 모드를 해제합니다.

String toString()

객체의 문자열 표현을 반환합니다.

final void wait(long timeoutMillis, int nanos)

일반적으로 알림을 받거나 중단되어 절전 모드에서 해제될 때까지 또는 일정 시간이 경과할 때까지 현재 스레드가 대기하도록 합니다.

final void wait(long timeoutMillis)

일반적으로 알림을 받거나 중단되어 절전 모드에서 해제될 때까지 또는 일정 시간이 경과할 때까지 현재 스레드가 대기하도록 합니다.

final void wait()

일반적으로 알림을 받거나 중단되어 절전 모드에서 해제될 때까지 현재 스레드가 대기하도록 합니다.

abstract int describeContents()

이 Parcelable 인스턴스의 마셜링된 표현에 포함된 특수 객체의 종류를 설명합니다.

abstract void writeToParcel(Parcel dest, int flags)

이 객체를 Parcel에 평면화합니다.

필드

생성자

public static final Creator<SandboxedSdk> CREATOR

공개 생성자

샌드박스 처리된 SDK

public SandboxedSdk (IBinder sdkInterface)

SandboxedSdk 객체를 만듭니다.

매개변수
sdkInterface IBinder: SDK의 인터페이스입니다. 샌드박스 처리된 SDK의 진입점이 됩니다. 지정할 수도 있습니다 SDK는 샌드박스에 로드될 때까지 이를 유효하게 유지해야 합니다. 언로드되면 이 인터페이스에 대한 호출이 실패하기 시작합니다.

이 인터페이스는 나중에 getInterface()를 사용하여 가져올 수 있습니다. 이 값은 null일 수 없습니다.

공개 메서드

describeContents

API 수준 34에 추가됨
public int describeContents ()

이 Parcelable 인스턴스의 마셜링된 표현에 포함된 특수 객체의 종류를 설명합니다. 예를 들어 객체에 writeToParcel(android.os.Parcel, int) 결과에 있는 파일 설명자가 포함될 경우 이 메서드의 반환 값에는 CONTENTS_FILE_DESCRIPTOR 부분이 포함되어야 합니다.

반환 값
int 이 Parcelable 객체 인스턴스에서 마셜링된 특수 객체 유형의 집합을 나타내는 비트마스크입니다. 값은 0 또는 CONTENTS_FILE_DESCRIPTOR입니다.

getInterface

public IBinder getInterface ()

SdkSandboxManager.loadSdk(String, Bundle, Executor, OutcomeReceiver)에 대한 응답으로 로드된 SDK에 인터페이스를 반환합니다. Binder가 이후 null 인터페이스를 SDK가 로드 취소되어 사용할 수 없게 됩니다.

반환 값
IBinder

getSharedLibraryInfo

public SharedLibraryInfo getSharedLibraryInfo ()

SDK의 SharedLibraryInfo를 반환합니다.

반환 값
SharedLibraryInfo 이 값은 null일 수 없습니다.

생성 값
IllegalStateException 시스템 서비스가 아직 SDK에서 보낸 SandboxedSdk 객체에 SharedLibraryInfo를 연결하지 않은 경우

writeToParcel

API 수준 34에 추가됨
public void writeToParcel (Parcel dest, 
                int flags)

이 객체를 Parcel에 평면화합니다.

매개변수
dest Parcel: 이 값은 null일 수 없습니다.

flags int: 객체가 작성되는 방식에 대한 추가 플래그입니다. 0 또는 Parcelable.PARCELABLE_WRITE_RETURN_VALUE일 수 있습니다. 값은 0이거나 Parcelable.PARCELABLE_WRITE_RETURN_VALUE와 android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES의 조합입니다.