SdkSandboxManager

public final class SdkSandboxManager
extends Object

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


SDK 샌드박스 프로세스에 SDKs를 로드한 다음 이와 상호작용하는 API를 제공합니다.

SDK 샌드박스는 별도의 UID 범위에서 실행되는 자바 프로세스입니다. 각 앱에는 자체 SDK 샌드박스 프로세스가 있을 수 있습니다.

앱은 먼저 <uses-sdk-library> 태그를 사용하여 매니페스트에서 종속된 SDK를 선언해야 합니다. 앱은 종속된 SDK만 SDK 샌드박스에 로드할 수 있습니다.

요약

중첩된 클래스

interface SdkSandboxManager.SdkSandboxProcessDeathCallback

이벤트 SDK 샌드박스 종료를 추적하기 위한 콜백입니다. 

상수

String EXTRA_DISPLAY_ID

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 번들 필드에서 사용할 키의 이름입니다. 이 값은 SurfacePackage를 표시할 논리 디스플레이의 정수 ID를 정의해야 합니다.

String EXTRA_HEIGHT_IN_PIXELS

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 번들 필드에서 사용할 키의 이름으로, 값은 SurfacePackage의 정수 높이를 픽셀 단위로 정의해야 합니다.

String EXTRA_HOST_TOKEN

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 번들 필드에서 사용할 키의 이름입니다. SurfaceView가 뷰 계층 구조에 추가되면 값이 SurfaceView.getHostToken()에서 반환한 토큰을 표시해야 합니다.

String EXTRA_SURFACE_PACKAGE

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 필드인 OutcomeReceiveronResult 함수에 전달되는 번들의 키 이름으로, 값은 요청된 SurfacePackage를 나타냅니다.

String EXTRA_WIDTH_IN_PIXELS

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 번들 필드에서 사용할 키의 이름으로, 값은 SurfacePackage의 정수 너비를 픽셀 단위로 정의해야 합니다.

int LOAD_SDK_ALREADY_LOADED

SDK가 이미 로드되었습니다.

int LOAD_SDK_INTERNAL_ERROR

SDK를 로드하는 동안 내부 오류가 발생했습니다.

int LOAD_SDK_NOT_FOUND

SDK를 찾을 수 없습니다.

int LOAD_SDK_SDK_DEFINED_ERROR

로드 후 SDK 오류가 발생했습니다.

int LOAD_SDK_SDK_SANDBOX_DISABLED

SDK 샌드박스가 사용 중지되었습니다.

int REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR

SurfacePackage 요청 중에 내부 오류가 발생했습니다.

int REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED

SurfacePackage를 요청하는 동안 SDK가 로드되지 않습니다.

int SDK_SANDBOX_PROCESS_NOT_AVAILABLE

SDK 샌드박스 프로세스를 사용할 수 없습니다.

String SDK_SANDBOX_SERVICE

이 클라이언트 애플리케이션에 속한 SDK와 상호작용하기 위한 SdkSandboxManager를 검색하려면 Context#getSystemService(String)와 함께 사용합니다.

int SDK_SANDBOX_STATE_DISABLED

SDK 샌드박스가 사용 중지되었습니다.

int SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

SDK 샌드박스가 사용 설정되었습니다.

공개 메서드

void addSdkSandboxProcessDeathCallback(Executor callbackExecutor, SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

SDK 샌드박스 종료와 같은 SDK 샌드박스 수명 주기 이벤트에 등록되는 콜백을 추가합니다.

void addSyncedSharedPreferencesKeys(Set<String> keys)

앱의 기본 SharedPreferences에서 SDK 샌드박스로 동기화되는 키 집합에 키를 추가합니다.

List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces()

앱에 등록된 AppOwnedSdkSandboxInterface 목록을 가져옵니다.

List<SandboxedSdk> getSandboxedSdks()

샌드박스에 로드된 SDK에 대한 정보를 가져옵니다.

static int getSdkSandboxState()

SDK 샌드박스 기능의 사용 가능 여부의 현재 상태를 반환합니다.

Set<String> getSyncedSharedPreferencesKeys()

앱의 기본 SharedPreferences에서 SDK 샌드박스로 동기화되는 설정된 키를 반환합니다.

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

SDK 샌드박스 자바 프로세스에서 SDK를 로드합니다.

void registerAppOwnedSdkSandboxInterface(AppOwnedSdkSandboxInterface appOwnedSdkSandboxInterface)

앱 프로세스에 AppOwnedSdkSandboxInterface를 등록합니다.

void removeSdkSandboxProcessDeathCallback(SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

이전에 addSdkSandboxProcessDeathCallback(java.util.concurrent.Executor, android.app.sdksandbox.SdkSandboxManager.SdkSandboxProcessDeathCallback)를 사용하여 추가된 SdkSandboxProcessDeathCallback를 삭제합니다.

void removeSyncedSharedPreferencesKeys(Set<String> keys)

addSyncedSharedPreferencesKeys(java.util.Set)를 사용하여 추가된 키 집합에서 키를 삭제합니다.

삭제된 키는 이미 동기화된 경우 SDK 샌드박스에서 삭제됩니다.

void requestSurfacePackage(String sdkName, Bundle params, Executor callbackExecutor, OutcomeReceiver<BundleRequestSurfacePackageException> receiver)

노출 영역 패키지 요청을 SDK에 전송합니다.

void startSdkSandboxActivity(Activity fromActivity, IBinder sdkActivityToken)

SDK 샌드박스에서 Activity를 시작합니다.

void unloadSdk(String sdkName)

호출자가 이전에 로드한 SDK를 언로드합니다.

void unregisterAppOwnedSdkSandboxInterface(String name)

앱 프로세스의 ERROR(/AppOwnedSdkSandboxInterfaces) 등록을 취소합니다.

상속된 메서드

상수

EXTRA_DISPLAY_ID(추가_디스플레이_ID)

public static final String EXTRA_DISPLAY_ID

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 번들 필드에서 사용할 키의 이름입니다. 이 값은 SurfacePackage를 표시할 논리 디스플레이의 정수 ID를 정의해야 합니다.

상수 값: "android.app.sdksandbox.extra.DISPLAY_ID"

EXTRA_HEIGHT_IN_PIXELS개

public static final String EXTRA_HEIGHT_IN_PIXELS

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 번들 필드에서 사용할 키의 이름으로, 값은 SurfacePackage의 정수 높이를 픽셀 단위로 정의해야 합니다.

상수 값: "android.app.sdksandbox.extra.HEIGHT_IN_PIXELS"

EXTRA_HOST_TOKEN

public static final String EXTRA_HOST_TOKEN

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 번들 필드에서 사용할 키의 이름입니다. SurfaceView가 뷰 계층 구조에 추가되면 값이 SurfaceView.getHostToken()에서 반환한 토큰을 표시해야 합니다. ANR 보고를 사용 설정하기 위해 null이 아닌 값만 허용됩니다.

상수 값: "android.app.sdksandbox.extra.HOST_TOKEN"

EXTRA_SURFACE_PACKAGE

public static final String EXTRA_SURFACE_PACKAGE

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 필드인 OutcomeReceiveronResult 함수에 전달되는 번들의 키 이름으로, 값은 요청된 SurfacePackage를 나타냅니다.

상수 값: "android.app.sdksandbox.extra.SURFACE_PACKAGE"

EXTRA_WIDTH_IN_PIXELS개

public static final String EXTRA_WIDTH_IN_PIXELS

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)의 번들 필드에서 사용할 키의 이름으로, 값은 SurfacePackage의 정수 너비를 픽셀 단위로 정의해야 합니다.

상수 값: "android.app.sdksandbox.extra.WIDTH_IN_PIXELS"

LOAD_SDK_ALREADY_LOADED

public static final int LOAD_SDK_ALREADY_LOADED

SDK가 이미 로드되었습니다.

성공적으로 로드된 후 클라이언트 애플리케이션이 loadSdk(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)를 호출하여 동일한 SDK를 다시 로드하려고 했음을 나타냅니다.

상수 값: 101 (0x00000065)

LOAD_SDK_INTERNAL_ERROR

public static final int LOAD_SDK_INTERNAL_ERROR

SDK를 로드하는 동안 내부 오류가 발생했습니다.

클라이언트 애플리케이션의 호출을 적용하는 동안 일반적인 내부 오류가 발생했음을 나타냅니다.

상수 값: 500 (0x000001f4)

LOAD_SDK_NOT_FOUND

public static final int LOAD_SDK_NOT_FOUND

SDK를 찾을 수 없습니다.

클라이언트 애플리케이션이 loadSdk(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)을 호출하여 존재하지 않는 SDK를 로드하려고 했음을 나타냅니다.

상수 값: 100 (0x00000064)

LOAD_SDK_SDK_DEFINED_ERROR

public static final int LOAD_SDK_SDK_DEFINED_ERROR

로드 후 SDK 오류가 발생했습니다.

로드 후 초기화 중에 SDK에 오류가 발생했음을 나타냅니다. 자세한 내용은 SdkSandboxManager#loadSdk에 전달된 OutcomeReceiver를 통해 LoadSdkException에서 반환된 번들에서 확인할 수 있습니다.

상수 값: 102 (0x00000066)

LOAD_SDK_SDK_SANDBOX_DISABLED

public static final int LOAD_SDK_SDK_SANDBOX_DISABLED

SDK 샌드박스가 사용 중지되었습니다.

SDK 샌드박스가 사용 중지되었음을 나타냅니다. 이후 이 부팅에서 SDK를 로드하려고 하면 실패합니다.

상수 값: 103 (0x00000067)

REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR

public static final int REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR

SurfacePackage 요청 중에 내부 오류가 발생했습니다.

SurfacePackage를 요청하는 동안 일반적인 내부 오류가 발생했음을 나타냅니다.

상수 값: 700 (0x000002bc)

REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED

public static final int REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED

SurfacePackage를 요청하는 동안 SDK가 로드되지 않습니다.

샌드박스가 종료되었거나 애초에 로드되지 않았기 때문에 SurfacePackage를 요청 중인 SDK가 로드되지 않았음을 나타냅니다.

상수 값: 701 (0x000002bd)

SDK_SANDBOX_PROCESS_NOT_AVAILABLE

public static final int SDK_SANDBOX_PROCESS_NOT_AVAILABLE

SDK 샌드박스 프로세스를 사용할 수 없습니다.

SDK 샌드박스 프로세스가 종료되었거나 연결 해제되었거나 애초에 생성되지 않았기 때문에 SDK 샌드박스 프로세스를 사용할 수 없음을 나타냅니다.

상수 값: 503 (0x000001f7)

SDK_SANDBOX_SERVICE

public static final String SDK_SANDBOX_SERVICE

이 클라이언트 애플리케이션에 속한 SDK와 상호작용하기 위한 SdkSandboxManager를 검색하려면 Context#getSystemService(String)와 함께 사용합니다.

상수 값: "sdk_sandbox"

SDK_SANDBOX_STATE_DISABLED

public static final int SDK_SANDBOX_STATE_DISABLED

SDK 샌드박스가 사용 중지되었습니다.

SdkSandboxManager API를 숨겼습니다. 이를 호출하려고 하면 UnsupportedOperationException이 발생합니다.

상수 값: 0 (0x00000000)

SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

public static final int SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

SDK 샌드박스가 사용 설정되었습니다.

앱은 SdkSandboxManager API를 사용하여 종속된 SDKs를 상응하는 SDK 샌드박스 프로세스에 로드할 수 있습니다.

상수 값: 2 (0x00000002)

공개 메서드

addSdkSandboxProcessDeathCallback

public void addSdkSandboxProcessDeathCallback (Executor callbackExecutor, 
                SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

SDK 샌드박스 종료와 같은 SDK 샌드박스 수명 주기 이벤트에 등록되는 콜백을 추가합니다. 이 메서드를 호출할 때 샌드박스가 아직 생성되지 않은 경우 샌드박스가 만들어질 때까지 요청이 저장되며 그때 해당 샌드박스에 대해 활성화됩니다. 여러 콜백을 추가하여 종료를 감지할 수 있으며 샌드박스가 종료될 때 삭제되지 않습니다.

매개변수
callbackExecutor Executor: 콜백을 호출할 Executor입니다. 이 값은 null일 수 없습니다. 콜백 및 리스너 이벤트는 이 Executor를 통해 전달되므로 사용되는 스레드를 쉽게 제어할 수 있습니다. 애플리케이션의 기본 스레드를 통해 이벤트를 전달하려면 Context.getMainExecutor()를 사용하면 됩니다. 그 외의 경우에는 적절한 스레드에 전달되는 Executor를 제공합니다.

callback SdkSandboxManager.SdkSandboxProcessDeathCallback: SDK 샌드박스 수명 주기 이벤트를 수신하는 SdkSandboxProcessDeathCallback입니다. 이 값은 null일 수 없습니다.

addSyncedSharedPreferencesKeys

public void addSyncedSharedPreferencesKeys (Set<String> keys)

앱의 기본 SharedPreferences에서 SDK 샌드박스로 동기화되는 키 집합에 키를 추가합니다.

동기화된 데이터는 SDK에서 SdkSandboxController.getClientSharedPreferences() API를 사용하여 읽을 수 있습니다.

이 API를 사용하여 추가된 키의 동기화를 중지하려면 removeSyncedSharedPreferencesKeys(java.util.Set)를 사용하세요.

앱이 다시 시작되고 사용자가 이 API를 다시 호출하여 동기화를 위한 키 풀을 다시 빌드해야 하면 동기화가 중단됩니다.

참고: 이 클래스는 여러 프로세스에 걸친 사용을 지원하지 않습니다.

매개변수
keys Set: 샌드박스에 동기화될 키 집합입니다. 이 값은 null일 수 없습니다.

getAppOwnedSdkSandboxInterfaces

public List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces ()

앱에 등록된 AppOwnedSdkSandboxInterface 목록을 가져옵니다.

반환 값
List<AppOwnedSdkSandboxInterface> 지도에서 callInfo를 찾을 수 없는 경우 빈 목록이며 그렇지 않은 경우 AppOwnedSdkSandboxInterface 목록입니다. 이 값은 null일 수 없습니다.

getSandboxedSdks

public List<SandboxedSdk> getSandboxedSdks ()

샌드박스에 로드된 SDK에 대한 정보를 가져옵니다.

반환 값
List<SandboxedSdk> 현재 로드된 모든 SDK가 포함된 SandboxedSdk 목록입니다. 이 값은 null일 수 없습니다.

getSdkSandboxState

public static int getSdkSandboxState ()

SDK 샌드박스 기능의 사용 가능 여부의 현재 상태를 반환합니다.

반환 값
int 값은 SDK_SANDBOX_STATE_DISABLED 또는 SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION입니다.

getSyncedSharedPreferencesKeys

public Set<String> getSyncedSharedPreferencesKeys ()

앱의 기본 SharedPreferences에서 SDK 샌드박스로 동기화되는 설정된 키를 반환합니다.

반환 값
Set<String> 이 값은 null일 수 없습니다.

loadSdk

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

SDK 샌드박스 자바 프로세스에서 SDK를 로드합니다.

sdkName를 사용하여 SDK 샌드박스 프로세스에 SDK 라이브러리를 비동기식으로 로드합니다. 호출자는 receiver를 통해 알림을 받습니다.

호출자는 <uses-sdk-library> 태그를 사용하여 매니페스트에서 종속되는 SDKs를 이미 선언해야 합니다. 호출자는 종속되는 SDKs만 SDK 샌드박스에 로드할 수 있습니다.

클라이언트 애플리케이션이 첫 번째 SDK를 로드하면 새 SDK 샌드박스 프로세스가 생성됩니다. 클라이언트 애플리케이션용 샌드박스가 이미 생성된 경우 추가 SDK가 동일한 샌드박스에 로드됩니다.

이 API는 호출자가 포그라운드에서 실행 중일 때만 호출할 수 있습니다. 백그라운드에서 호출하면 receiverLoadSdkException가 반환됩니다.

매개변수
sdkName String: 로드할 SDK의 이름입니다. 이 값은 null일 수 없습니다.

params Bundle: 클라이언트와 SDK 간에 합의된 Bundle 형식으로 SDK에 전달할 추가 매개변수입니다. 이 값은 null일 수 없습니다.

executor Executor: 수신기를 호출할 Executor입니다. 이 값은 null일 수 없습니다. 콜백 및 리스너 이벤트는 이 Executor를 통해 전달되므로 사용되는 스레드를 쉽게 제어할 수 있습니다. 애플리케이션의 기본 스레드를 통해 이벤트를 전달하려면 Context.getMainExecutor()를 사용하면 됩니다. 그 외의 경우에는 적절한 스레드에 전달되는 Executor를 제공합니다.

receiver OutcomeReceiver: 실행 성공 시 SandboxedSdk 또는 LoadSdkException를 수신합니다. 이 값은 null일 수 없습니다.

앱소유SdkSandboxInterface 등록

public void registerAppOwnedSdkSandboxInterface (AppOwnedSdkSandboxInterface appOwnedSdkSandboxInterface)

앱 프로세스에 AppOwnedSdkSandboxInterface를 등록합니다.

이전에 등록된 인터페이스와 이름이 동일한 AppOwnedSdkSandboxInterface를 등록하면 IllegalStateException이 발생합니다.

AppOwnedSdkSandboxInterface#getName()은 인터페이스의 이름을 나타냅니다.

매개변수
appOwnedSdkSandboxInterface AppOwnedSdkSandboxInterface: 등록할 AppOwnedSdkSandboxInterface입니다. 이 값은 null일 수 없습니다.

removeSdkSandboxProcessDeathCallback 콜백

public void removeSdkSandboxProcessDeathCallback (SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

이전에 addSdkSandboxProcessDeathCallback(java.util.concurrent.Executor, android.app.sdksandbox.SdkSandboxManager.SdkSandboxProcessDeathCallback)를 사용하여 추가된 SdkSandboxProcessDeathCallback를 삭제합니다.

매개변수
callback SdkSandboxManager.SdkSandboxProcessDeathCallback: 이전에 SdkSandboxManager#addSdkSandboxProcessDeathCallback(Executor, SdkSandboxProcessDeathCallback)를 사용하여 추가된 SdkSandboxProcessDeathCallback입니다. 이 값은 null일 수 없습니다.

removeSyncedSharedPreferencesKeys

public void removeSyncedSharedPreferencesKeys (Set<String> keys)

addSyncedSharedPreferencesKeys(java.util.Set)를 사용하여 추가된 키 집합에서 키를 삭제합니다.

삭제된 키는 이미 동기화된 경우 SDK 샌드박스에서 삭제됩니다.

매개변수
keys Set: 더 이상 샌드박스에 동기화하지 않아야 하는 키 이름의 집합입니다. 이 값은 null일 수 없습니다.

requestSurfacePackage

public void requestSurfacePackage (String sdkName, 
                Bundle params, 
                Executor callbackExecutor, 
                OutcomeReceiver<BundleRequestSurfacePackageException> receiver)

노출 영역 패키지 요청을 SDK에 전송합니다.

클라이언트 애플리케이션이 성공적인 SDK 로드에 관한 신호를 수신하고 SurfaceView를 뷰 계층 구조에 추가한 후에는 SDK에서 뷰를 렌더링하도록 SurfacePackage를 비동기식으로 요청할 수 있습니다.

SurfacePackage가 준비되면 전달된 receiverOutcomeReceiver#onResult 콜백이 호출됩니다. 이 콜백은 연결된 값이 요청된 SurfacePackageSdkSandboxManager#EXTRA_SURFACE_PACKAGE 키를 포함하는 Bundle 객체를 포함합니다.

전달된 params에는 EXTRA_WIDTH_IN_PIXELS, SdkSandboxManager#EXTRA_HEIGHT_IN_PIXELS, SdkSandboxManager#EXTRA_DISPLAY_ID, SdkSandboxManager#EXTRA_HOST_TOKEN 키가 포함되어야 합니다. 이러한 키 중 하나라도 누락되거나 유효하지 않으면 IllegalArgumentException이 발생합니다.

이 API는 호출자가 포그라운드에서 실행 중일 때만 호출할 수 있습니다. 백그라운드에서 호출하면 receiver에서 RequestSurfacePackageException이 반환됩니다.

매개변수
sdkName String: SDK 샌드박스에 로드된 SDK의 이름입니다. 이 값은 null일 수 없습니다.

params Bundle: 클라이언트 애플리케이션이 SDK에 전달하는 매개변수입니다. 이 값은 null일 수 없습니다.

callbackExecutor Executor: 콜백을 호출할 Executor입니다. 이 값은 null일 수 없습니다. 콜백 및 리스너 이벤트는 이 Executor를 통해 전달되므로 사용되는 스레드를 쉽게 제어할 수 있습니다. 애플리케이션의 기본 스레드를 통해 이벤트를 전달하려면 Context.getMainExecutor()를 사용하면 됩니다. 그 외의 경우에는 적절한 스레드에 전달되는 Executor를 제공합니다.

receiver OutcomeReceiver: 성공 시 Bundle를 반환하며 성공 시 SurfacePackage 값이 있는 SdkSandboxManager#EXTRA_SURFACE_PACKAGE 키를 포함하거나 실패 시 RequestSurfacePackageException를 반환합니다. 이 값은 null일 수 없습니다.

생성 값
IllegalArgumentException params에 모든 필수 키가 포함되지 않은 경우입니다.

startSdkSandboxActivity

public void startSdkSandboxActivity (Activity fromActivity, 
                IBinder sdkActivityToken)

SDK 샌드박스에서 Activity를 시작합니다.

이 함수는 전달된 fromActivity의 동일한 작업에서 새 Activity를 시작하고, Activity를 통계화하는 SDK의 요청을 식별하는 전달된 sdkActivityToken를 공유하는 SDK에 전달합니다.

다음과 같은 경우 Activity가 시작되지 않습니다.

  • 이 API를 호출하는 앱이 백그라운드에 있습니다.
  • 전달된 sdkActivityToken는 호출자 앱과 공유한 SDK의 Activity 요청에 매핑되지 않습니다.
  • 전달된 sdkActivityToken을(를) 공유한 SDK가 이 Activity에 대한 요청을 삭제했습니다.
  • 샌드박스 Activity은(는) 이미 생성되었습니다.

매개변수
fromActivity Activity: ActivityActivity#startActivity(Intent)를 호출하여 새 샌드박스 Activity를 시작하는 데 사용됩니다. 이 값은 null일 수 없습니다.

sdkActivityToken IBinder: Activity를 요청하는 SDK가 공유하는 식별자입니다. 이 값은 null일 수 없습니다.

로드 취소

public void unloadSdk (String sdkName)

호출자가 이전에 로드한 SDK를 언로드합니다.

이 SDK에 할당된 메모리가 즉시 해제되지 않을 수도 있습니다. 지정된 sdkName에 관한 이후의 모든 requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) 호출은 실패합니다.

이 API는 호출자가 포그라운드에서 실행 중일 때만 호출할 수 있습니다. 백그라운드에서 호출하면 SecurityException이 발생합니다.

매개변수
sdkName String: 로드 취소할 SDK의 이름입니다. 이 값은 null일 수 없습니다.

등록 취소 앱 소유SdkSandboxInterface

public void unregisterAppOwnedSdkSandboxInterface (String name)

앱 프로세스의 ERROR(/AppOwnedSdkSandboxInterfaces) 등록을 취소합니다.

매개변수
name String: AppOwnedSdkSandboxInterface가 등록된 이름입니다. 이 값은 null일 수 없습니다.