SdkSandboxController

public class SdkSandboxController
extends Object

java.lang.Object
   ↳ android.app.sdksandbox.sdkprovider.SdkSandboxController


샌드박스에 로드된 SDK에서 사용하는 컨트롤러로, SDK 샌드박스에서 제공하는 정보에 액세스합니다.

이를 통해 SDK가 SDK 샌드박스의 다른 SDK와 통신하고 현재 로드된 SDK의 상태를 알 수 있습니다.

Context.getSystemService(Class)class를 사용하여 SdkSandboxController의 인스턴스를 가져올 수 있습니다. 그러면 SandboxedSdkProvider.getContext()를 사용하여 Context를 가져올 수 있습니다.

요약

상수

String SDK_SANDBOX_CONTROLLER_SERVICE

공개 메서드

List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces()

앱에 등록된 모든 AppOwnedSdkSandboxInterface를 가져옵니다.

String getClientPackageName()

클라이언트 앱의 패키지 이름을 반환합니다.

SharedPreferences getClientSharedPreferences()

클라이언트 앱에서 동기화된 데이터를 포함하는 SharedPreferences를 반환합니다.

List<SandboxedSdk> getSandboxedSdks()

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

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

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

IBinder registerSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)

SdkSandboxActivityHandler를 등록한 후 식별자를 반환합니다.

void unregisterSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)

이미 등록된 SdkSandboxActivityHandler를 등록 취소합니다.

상속된 메서드

상수

SDK_SANDBOX_CONTROLLER_SERVICE

public static final String SDK_SANDBOX_CONTROLLER_SERVICE

상수 값: "sdk_sandbox_controller_service"

공개 메서드

getAppOwnedSdkSandboxInterfaces

public List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces ()

앱에 등록된 모든 AppOwnedSdkSandboxInterface를 가져옵니다.

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

생성 값
UnsupportedOperationException 컨트롤러를 가져올 수 있습니다. 올바른 컨텍스트를 위해 SandboxedSdkProvider#getContext() 사용

getClientPackageName

public String getClientPackageName ()

클라이언트 앱의 패키지 이름을 반환합니다.

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

생성 값
UnsupportedOperationException 컨트롤러를 가져올 수 있습니다. 올바른 컨텍스트에 SandboxedSdkProvider#getContext()를 사용합니다.

getClientSharedPreferences

public SharedPreferences getClientSharedPreferences ()

클라이언트 앱에서 동기화된 데이터를 포함하는 SharedPreferences를 반환합니다.

SdkSandboxManager.addSyncedSharedPreferencesKeys(Set)를 사용하여 클라이언트 앱에서 동기화된 키는 이 SharedPreferences에서 찾을 수 있습니다.

반환된 SharedPreferences는 읽기만 가능해야 합니다. 텍스트 쓰기는 지원되지 않습니다.

반환 값
SharedPreferences 클라이언트 앱에서 동기화된 데이터가 포함된 SharedPreferences입니다. 이 값은 null일 수 없습니다.

생성 값
UnsupportedOperationException 컨트롤러를 가져올 수 있습니다. 올바른 컨텍스트를 위해 SandboxedSdkProvider#getContext() 사용

getSandboxedSdks

public List<SandboxedSdk> getSandboxedSdks ()

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

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

생성 값
UnsupportedOperationException 컨트롤러를 가져올 수 있습니다. 올바른 컨텍스트를 위해 SandboxedSdkProvider#getContext() 사용

loadSdk

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

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

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

호출자는 클라이언트 앱이 사용하는 SDKs만 SDK 샌드박스에 로드할 수 있습니다.

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

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

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

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

생성 값
UnsupportedOperationException 컨트롤러를 가져올 수 있습니다. 올바른 컨텍스트를 위해 SandboxedSdkProvider#getContext() 사용

registerSdkSandboxActivityHandler

public IBinder registerSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)

SdkSandboxActivityHandler를 등록한 후 식별자를 반환합니다.

이 함수는 SDK에서 만든 SdkSandboxActivityHandler 구현을 등록하고 전달된 SdkSandboxActivityHandler 객체를 고유하게 식별하는 IBinder를 반환합니다.

등록 취소 없이 동일한 SdkSandboxActivityHandler가 여러 번 등록된 경우 동일한 IBinder 토큰이 반환됩니다.

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

반환 값
IBinder IBinder는 전달된 SdkSandboxActivityHandler를 고유하게 식별합니다. 이 값은 null일 수 없습니다.

unregisterSdkSandboxActivityHandler 클래스의 생성자

public void unregisterSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)

이미 등록된 SdkSandboxActivityHandler를 등록 취소합니다.

전달된 SdkSandboxActivityHandler가 등록되면 등록이 취소됩니다. 그렇지 않으면 아무 일도 일어나지 않습니다.

등록 취소 후 SDK는 동일한 핸들러 객체를 다시 등록하거나 새 Activity를 원하는 경우 새 핸들러 객체를 만들 수 있습니다.

등록되지 않은 핸들러의 IBinder 토큰이 Activity를 시작하는 데 사용되면 Activity가 시작되지 않습니다.

매개변수
sdkSandboxActivityHandler SdkSandboxActivityHandler: 등록 취소할 SdkSandboxActivityHandler입니다. 이 값은 null일 수 없습니다.

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