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 |
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ề |
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
public SandboxedSdkProvider ()
Phương thức công khai
attachContext
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
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
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
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
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 |