עבודה מבודדת
public
interface
IsolatedWorker
android.adservices.ondevicepersonalization.IsolatedWorker |
ממשק עם שיטות שצריך להטמיע כדי לטפל בבקשות ממערכת ההפעלה ל-IsolatedService
. ה-IsolatedService
יוצר מופע של IsolatedWorker
בכל בקשה וקורא לאחת מהשיטות הבאות, בהתאם לסוג הבקשה. ה-IsolatedService
קורא ל-method בשרשור של Binder, וה-IsolatedWorker
צריך להעביר פעולות ממושכות לשרשור של עובד. הפרמטר של הצרכן בכל שיטה משמש להחזרת תוצאות.
סיכום
שיטות ציבוריות | |
---|---|
default
void
|
onDownloadCompleted(DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)
טיפול בהורדה שהושלמו. |
default
void
|
onEvent(EventInput input, Consumer<EventOutput> consumer)
מטפל באירוע שמופעל על-ידי בקשה לכתובת URL למעקב |
default
void
|
onExecute(ExecuteInput input, Consumer<ExecuteOutput> consumer)
טיפול בבקשה מאפליקציה. |
default
void
|
onRender(RenderInput input, Consumer<RenderOutput> consumer)
הפונקציה יוצרת קובץ HTML של התוצאות שהוחזרו כתוצאה מ- |
default
void
|
onTrainingExample(TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
יצירת דוגמה אחת לאימון המשמשת למשימה של חישוב מאוחד. |
שיטות ציבוריות
ההורדה הושלמה
public void onDownloadCompleted (DownloadCompletedInput input, Consumer<DownloadCompletedOutput> consumer)
טיפול בהורדה שהושלמה. הפלטפורמה מורידה תוכן באמצעות הפרמטרים שהוגדרו במניפסט החבילה של IsolatedService
, קוראת לפונקציה הזו לאחר השלמת ההורדה ומעדכנת את הטבלה REMOTE_DATA מ-IsolatedService#getRemoteData(RequestToken)
באמצעות השיטה הזו.
פרמטרים | |
---|---|
input |
DownloadCompletedInput : הורדת הפרמטרים של ה-handler.
הערך לא יכול להיות null . |
consumer |
Consumer : קריאה חוזרת (callback) שמקבלת את התוצאה. צריך להפעיל את הפונקציה עם הערך null במקרה של שגיאה. אם קוראים ל-REMOTE_DATA עם null , לא מתבצעים עדכונים בטבלה REMOTE_DATA.
אם השיטה הזו מחזירה את הערך |
onEvent
public void onEvent (EventInput input, Consumer<EventOutput> consumer)
הקוד מטפל באירוע שמופעל על ידי בקשה לכתובת URL למעקב EventUrlProvider
שסופקה על ידי הפלטפורמה, ששובצה בפלט ה-HTML שהוחזר על ידי onRender(android.adservices.ondevicepersonalization.RenderInput, java.util.function.Consumer)
. הפלטפורמה מעדכנת את הטבלה EVENTS באמצעות EventOutput#getEventLogRecord()
.
פרמטרים | |
---|---|
input |
EventInput : הפרמטרים הנדרשים לחישוב נתוני האירוע.
הערך הזה לא יכול להיות null . |
consumer |
Consumer : קריאה חוזרת (callback) שמקבלת את התוצאה. צריכה להתבצע קריאה עם null
בשגיאה. אם קוראים ל-event_log עם null , לא נכתבים נתונים בטבלה EVENTS.
אם השיטה הזו מחזירה את הערך |
onExecute
public void onExecute (ExecuteInput input, Consumer<ExecuteOutput> consumer)
טיפול בבקשה מאפליקציה. השיטה הזו נקראת כשאפליקציה קוראת ל-OnDevicePersonalizationManager#execute(ComponentName, PersistableBundle,
java.util.concurrent.Executor, OutcomeReceiver)
שמתייחס ל-IsolatedService
בעל שם.
פרמטרים | |
---|---|
input |
ExecuteInput : פרמטרים של בקשה מהאפליקציה הקוראת.
הערך לא יכול להיות null . |
consumer |
Consumer : קריאה חוזרת שמקבלת את התוצאה ExecuteOutput . צריך להפעיל אותו עם הערך null במקרה של שגיאה. השגיאה מועברת לאפליקציה הקוראת בתור OnDevicePersonalizationException עם קוד השגיאה OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED . כדי למנוע הדלפת מידע פרטי לאפליקציית השיחות, אין דיווח מפורט יותר על השגיאות. אם ה-IsolatedService צריך לדווח על נתונים סטטיסטיים של שגיאות לקצה העורפי שלו, צריך לאכלס את ExecuteOutput בנתוני שגיאות לרישום ביומן ולהסתמך על Federated Analytics כדי לצבור את דוחות השגיאות.
אם השיטה הזו גורמת ל- |
onRender
public void onRender (RenderInput input, Consumer<RenderOutput> consumer)
הפונקציה יוצרת קובץ HTML של התוצאות שהוחזרו כתוצאה מ-onExecute(android.adservices.ondevicepersonalization.ExecuteInput, java.util.function.Consumer)
. הפונקציה נקראת כשאפליקציית לקוח קוראת ל-OnDevicePersonalizationManager#requestSurfacePackage(SurfacePackageToken, IBinder, int, int, int, java.util.concurrent.Executor, OutcomeReceiver)
.
הפלטפורמה תעבד את ה-HTML הזה ב-WebView
בתוך מסגרת
מגודרת.
פרמטרים | |
---|---|
input |
RenderInput : פרמטרים לבקשת הרינדור.
הערך לא יכול להיות null . |
consumer |
Consumer : קריאה חוזרת (callback) שמקבלת את התוצאה. צריך להפעיל את הפונקציה עם הערך null במקרה של שגיאה. השגיאה מועברת לאפליקציה הקוראת כ-OnDevicePersonalizationException עם קוד השגיאה OnDevicePersonalizationException.ERROR_ISOLATED_SERVICE_FAILED .
אם השיטה הזו מחזירה |
דוגמה לאימון
public void onTrainingExample (TrainingExampleInput input, Consumer<TrainingExampleOutput> consumer)
יצירת דוגמה אחת לאימון המשמשת למשימה של חישוב מאוחד.
פרמטרים | |
---|---|
input |
TrainingExampleInput : הפרמטרים הנדרשים ליצירת דוגמת האימון.
הערך הזה לא יכול להיות null . |
consumer |
Consumer : שיחה חוזרת שתופעל בסיום.
הערך לא יכול להיות null . |