SandboxedSdkProvider

public abstract class SandboxedSdkProvider
extends Object

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


Bao gồm API mà hộp cát SDK có thể sử dụng để tương tác với các SDK đã tải vào đó.

SDK phải triển khai lớp trừu tượng này để tạo điểm truy cập cho hộp cát SDK nhằm có thể gọi thông qua hộp cát đó.

Tóm tắt

Hàm khởi tạo công khai

SandboxedSdkProvider()

Phương thức công khai

final void attachContext(Context context)

Đặt SDK Context mà sau đó có thể được nhận bằng getContext().

void beforeUnloadSdk()

Thực hiện công việc cần thiết để SDK giải phóng tài nguyên của nó trước khi bị huỷ tải.

final Context getContext()

Trả về Context đã đặt trước đó thông qua SandboxedSdkProvider#attachContext.

abstract View getView(Context windowContext, Bundle params, int width, int height)

Yêu cầu chế độ xem được hiển thị từ xa đến quy trình ứng dụng khách.

abstract SandboxedSdk onLoadSdk(Bundle params)

Thực hiện công việc cần thiết để SDK bắt đầu xử lý các yêu cầu.

Các phương thức kế thừa

Hàm khởi tạo công khai

SandboxedSdkProvider

Đã thêm vào API cấp 34
Cũng có trong Tiện ích Dịch vụ quảng cáo 4
public SandboxedSdkProvider ()

Phương thức công khai

attachContext

Đã thêm vào API cấp 34
Cũng có trong Tiện ích Dịch vụ quảng cáo 4
public final void attachContext (Context context)

Đặt SDK Context mà sau đó có thể được nhận bằng getContext(). SDK này được gọi trước khi gọi onLoadSdk(Bundle). Không có hoạt động nào yêu cầu Context nên được thực hiện trước đó, vì SandboxedSdkProvider#getContext sẽ trả về giá trị rỗng cho đến khi phương thức này được gọi.

Gửi IllegalStateException nếu ngữ cảnh cơ sở đã được đặt.

Tham số
context Context: Ngữ cảnh cơ sở mới. Giá trị này không được là null.

beforeUnloadSdk

Đã thêm vào API cấp 34
Cũng có trong Tiện ích Dịch vụ quảng cáo 4
public void beforeUnloadSdk ()

Thực hiện công việc cần thiết để SDK giải phóng tài nguyên của nó trước khi bị huỷ tải.

Trình quản lý hộp cát SDK gọi hàm này trước khi huỷ tải SDK. SDK sẽ không thực hiện được bất kỳ lệnh gọi nào trên Binder mà trước đó đã được trả về ứng dụng khách thông qua SandboxedSdk.getInterface().

SDK không nên thực hiện bất kỳ tác vụ nào chạy trong thời gian dài ở đây, chẳng hạn như I/O và các lệnh gọi mạng.

getContext

Đã thêm vào API cấp 34
Cũng có trong Tiện ích Dịch vụ quảng cáo 4
public final Context getContext ()

Trả về Context đã đặt trước đó thông qua SandboxedSdkProvider#attachContext. Trả về giá trị rỗng nếu chưa ngữ cảnh nào được đặt trước đó.

Trả về
Context

getView

Đã thêm vào API cấp 34
Cũng có trong Tiện ích Dịch vụ quảng cáo 4
public abstract View getView (Context windowContext, 
                Bundle params, 
                int width, 
                int height)

Yêu cầu khung hiển thị phải hiển thị từ xa đến quy trình ứng dụng.

Trả về View sẽ được gói vào SurfacePackage. Kết quả SurfacePackage sẽ được gửi lại ứng dụng.

SDK không nên thực hiện bất kỳ tác vụ nào chạy trong thời gian dài ở đây, chẳng hạn như I/O và các lệnh gọi mạng. Nếu bạn làm như vậy, SDK có thể không nhận được yêu cầu từ ứng dụng.

Tham số
windowContext Context: Context của màn hình nhằm hiển thị chế độ xem Giá trị này không được là null.

params Bundle: danh sách các tham số được truyền từ ứng dụng yêu cầu khung hiển thị Giá trị này không được là null.

width int: Chế độ xem đã trả về sẽ được bố trí như trong một cửa sổ có chiều rộng này, tính bằng pixel.

height int: Chế độ xem đã trả về sẽ được bố trí như trong một cửa sổ có chiều cao này, tính bằng pixel.

Giá trị trả về
View View mà hộp cát SDK truyền đến ứng dụng yêu cầu khung hiển thị Giá trị này không được là null.

onLoadSdk

Đã thêm vào API cấp 34
Cũng có trong Tiện ích Dịch vụ quảng cáo 4
public abstract SandboxedSdk onLoadSdk (Bundle params)

Thực hiện công việc cần thiết để SDK bắt đầu xử lý các yêu cầu.

Hộp cát SDK gọi hàm này sau khi tải SDK.

SDK phải thực hiện mọi công việc để sẵn sàng xử lý các yêu cầu sắp tới. SDK không nên thực hiện bất kỳ tác vụ nào chạy trong thời gian dài ở đây, chẳng hạn như I/O và các lệnh gọi mạng. Nếu bạn làm như vậy, SDK có thể không nhận được yêu cầu từ ứng dụng. Ngoài ra, bạn không nên thực hiện quy trình khởi chạy phụ thuộc vào các SDK khác đang được tải vào hộp cát SDK.

SDK không nên thực hiện bất kỳ hoạt động nào yêu cầu đối tượng Context trước khi phương thức này được gọi.

Tham số
params Bundle: danh sách các tham số được truyền từ ứng dụng khách khi tải SDK. Bạn có thể để trống trường này. Giá trị này không được là null.

Trả về
SandboxedSdk Trả về SandboxedSdk, được truyền lại cho ứng dụng khách. IBinder dùng để tạo đối tượng SandboxedSdk sẽ được ứng dụng sử dụng để gọi vào SDK. Giá trị này không được là null.

Gửi
LoadSdkException