SandboxedSdkProvider

public abstract class SandboxedSdkProvider
extends Object

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


כולל API שבו ארגז ה-Sandbox של ה-SDK יכול להשתמש בו כדי לקיים אינטראקציה עם ערכות ה-SDK שנטענו בו.

ה-SDK צריך להטמיע את המחלקה המופשטת הזו כדי ליצור נקודת כניסה ל-Sandbox של SDK. כדי לקרוא אותו.

סיכום

בנאים ציבוריים

SandboxedSdkProvider()

שיטות ציבוריות

final void attachContext(Context context)

מגדיר את ה-SDK Context שיכול לקבל לאחר מכן באמצעות getContext().

void beforeUnloadSdk()

האם העבודה שנדרשת כדי שה-SDK יפנה את המשאבים לפני הסרת הנתונים שנטענו.

final Context getContext()

החזרת Context שהוגדרה דרך SandboxedSdkProvider#attachContext.

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

שולחת בקשה לעיבוד מרחוק של תצוגה לתהליך אפליקציית הלקוח.

abstract SandboxedSdk onLoadSdk(Bundle params)

מבצעת את העבודה הנדרשת כדי שמערכת ה-SDK תתחיל לטפל בבקשות.

שיטות שעברו בירושה

בנאים ציבוריים

SandboxedSdkProvider

public SandboxedSdkProvider ()

שיטות ציבוריות

relatedContext

public final void attachContext (Context context)

מגדיר את ה-SDK Context שיכול לקבל לאחר מכן באמצעות getContext(). הפעולה הזו מתבצעת לפני הפעלת onLoadSdk(Bundle). לא ניתן לבצע פעולות שמחייבות Context יבוצע לפני כן, כי הפונקציה SandboxedSdkProvider#getContext תחזיר את הערך null עד השיטה הזו נקראת.

הפעולה הזאת גורמת לחריגה מ-DisallowState אם כבר הוגדר הקשר בסיסי.

פרמטרים
context Context: ההקשר הבסיסי החדש. הערך הזה לא יכול להיות null.

beforeUnloadSdk

public void beforeUnloadSdk ()

האם העבודה שנדרשת כדי שה-SDK יפנה את המשאבים לפני הסרת הנתונים שנטענו.

מנהל ה-Sandbox של ה-SDK קורא לפונקציה הזו לפני הסרת הטעינה של ה-SDK. ה-SDK אמורות להיכשל הפעלות ב-Binnder שהוחזרו בעבר ללקוח דרך SandboxedSdk.getInterface().

ה-SDK לא אמור לבצע כאן משימות ממושכות, כמו קלט/פלט (I/O) ושיחות רשת.

getContext

public final Context getContext ()

החזרת Context שהוגדרה דרך SandboxedSdkProvider#attachContext. אם לא הוגדר הקשר לפני כן, הפונקציה הזו תחזיר את הערך null.

החזרות
Context

getView

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

שולחת בקשה לעיבוד מרחוק של תצוגה לתהליך אפליקציית הלקוח.

הפונקציה מחזירה את הערך View, בתוך SurfacePackage. ה-SurfacePackage שיתקבל יישלח חזרה לאפליקציית הלקוח.

ה-SDK לא אמור לבצע כאן משימות ממושכות, כמו קלט/פלט (I/O) ושיחות רשת. אם עושים את זה יכול למנוע מה-SDK לקבל בקשות מהלקוח.

פרמטרים
windowContext Context: ה-Context של המסך, שנועד להציג את התצוגה הערך הזה לא יכול להיות null.

params Bundle: רשימת הפרמטרים שמועברים מאפליקציית הלקוח שמבקשת את התצוגה הערך הזה לא יכול להיות null.

width int: התצוגה המוחזרת תורחב כחלון ברוחב הזה, בפיקסלים.

height int: התצוגה המוחזרת תורחב כחלון בגובה הזה, בפיקסלים.

החזרות
View View של העברת ה-Sandbox של ה-SDK לאפליקציית הלקוח שמבקשת את התצוגה הערך הזה לא יכול להיות null.

onLoadSdk

public abstract SandboxedSdk onLoadSdk (Bundle params)

מבצעת את העבודה הנדרשת כדי שמערכת ה-SDK תתחיל לטפל בבקשות.

מתבצעת קריאה לפונקציה הזו על ידי ארגז החול של ה-SDK אחרי שהיא טוענת את ה-SDK.

ערכת ה-SDK צריכה לעשות כל עבודה כדי שהיא תהיה מוכנה לטפל בבקשות עתידיות. הוא לא אמור לגרום כאן יש משימות ממושכות, כמו קלט/פלט (I/O) ושיחות רשת. אם תעשו זאת, ייתכן שה-SDK לא יוכל: קבלת בקשות מהלקוח. בנוסף, היא לא צריכה לבצע אתחול תלוי בכך שערכות SDK אחרות נטענות ל-Sandbox של ה-SDK.

ה-SDK לא יכול לבצע פעולות המחייבות אובייקט Context לפני ה-method הזו נשלחה קריאה.

פרמטרים
params Bundle: רשימת הפרמטרים שמועברים מהלקוח כשהוא טוען את ה-SDK. השדה הזה יכול להיות ריק. הערך הזה לא יכול להיות null.

החזרות
SandboxedSdk הפונקציה מחזירה SandboxedSdk, שמועברת בחזרה ללקוח. מכשיר ה-IBinder ששימש ליצירת הלקוח ישתמש באובייקט SandboxedSdk כדי לקרוא ל-SDK. הערך הזה לא יכול להיות null.

קליעות
LoadSdkException