IncrementalInstallSession
public
class
IncrementalInstallSession
extends Object
implements
AutoCloseable
| java.lang.Object | |
| ↳ | com.android.incfs.install.IncrementalInstallSession |
משמש ליצירת סשן התקנה מצטבר של חבילה, שבו הבלוקים של קובצי ה-APK המותקנים מועברים למכשיר בסטרימינג כשצריך לקרוא אותם.
התקנה מצטברת משתמשת במערכת קבצים מצטברת (IncFs) כדי לאפשר את סיום ההתקנה לפני שכל ה-APK הועבר למכשיר. אפשר להשתמש במחלקה הזו כדי להתחיל התקנה מצטברת, לקבוע אילו בלוקים של ה-APK מותרים להזרמה למכשיר ולחכות עד שהתקנת ה-APK תסתיים או עד שכל הבלוקים יוזרמו למכשיר.
החיבור למכשיר נשאר פתוח עד שהסשן נסגר, ההתקנה נכשלת, החיבור למכשיר מגיע לזמן קצוב לתפוגה או שמתרחשת חריגה במהלך עיבוד בקשות חסימה מהמכשיר.
דוגמה לשימוש במחלקה הזו:
try (IncrementalInstallSession session = new IncrementalInstallSession.Builder()
.addApk(mTestApk0, mTestSignature0)
.build()) {
// Start the session on a separate thread.
session.start(Executors.newCachedThreadPool(), mockDevice.getFactory());
// Wait a maximum of 45 seconds for the install to finish.
session.waitForInstallCompleted(45, TimeUnit.SECONDS);
}סיכום
כיתות מוטמעות | |
|---|---|
class |
IncrementalInstallSession.Builder
|
methods ציבוריים | |
|---|---|
void
|
close()
התקשורת עם המכשיר מבוטלת. |
IncrementalInstallSession
|
start(Executor executor, IDeviceConnection.Factory conFactory)
מתחיל את סשן ההתקנה של הסטרימינג. |
void
|
waitForAnyCompletion(long timeout, TimeUnit units)
חסימת השרשור הנוכחי עד שנתוני ה-APK יועברו למכשיר או עד שההתקנה תסתיים. |
void
|
waitForInstallCompleted(long timeout, TimeUnit units)
הפעולה חוסמת את השרשור הנוכחי עד שכל חבילות ה-APK יותקנו בהצלחה. |
void
|
waitForServingCompleted(long timeout, TimeUnit units)
חסימת השרשור הנוכחי עד שכל נתוני ה-APK יועברו למכשיר. |
methods ציבוריים
סגירה
public void close ()
התקשורת עם המכשיר מבוטלת.
התחלה
public IncrementalInstallSession start (Executor executor, IDeviceConnection.Factory conFactory)
מתחיל את סשן ההתקנה של הסטרימינג.
| פרמטרים | |
|---|---|
executor |
Executor: המבצע שבו מתחיל הטיפול בבקשות חסימה מהמכשיר |
conFactory |
IDeviceConnection.Factory: המפעל של חיבור המכשיר |
| החזרות | |
|---|---|
IncrementalInstallSession |
|
| הקפצת הודעות שגיאה (throw) | |
|---|---|
IOException |
אם מתרחשת שגיאה במהלך התקשורת עם המכשיר |
waitForAnyCompletion
public void waitForAnyCompletion (long timeout,
TimeUnit units)חסימת השרשור הנוכחי עד שנתוני ה-APK יועברו למכשיר או עד שההתקנה תסתיים.
| פרמטרים | |
|---|---|
timeout |
long: משך הזמן המקסימלי להמתנה. אם הערך הוא 0, השיטה הזו תמתין ללא הגבלת זמן. |
units |
TimeUnit: יחידות לערך שאינו אפס timeout |
| הקפצת הודעות שגיאה (throw) | |
|---|---|
IOException |
אם חלף הזמן להמתנה, אם לא ניתן להתקין קובץ APK או אם מתרחשת חריגה במהלך הטיפול בבקשות חסימה. |
InterruptedException |
|
waitForInstallCompleted
public void waitForInstallCompleted (long timeout,
TimeUnit units)הפעולה חוסמת את השרשור הנוכחי עד שכל חבילות ה-APK יותקנו בהצלחה. יכול להיות שהצגת הנתונים תסתיים לפני שההתקנה תצליח או אחרי שהיא תצליח.
| פרמטרים | |
|---|---|
timeout |
long: משך הזמן המקסימלי להמתנה עד לסיום ההתקנות. הערך 0
יגרום לשיטה הזו להמתין ללא הגבלת זמן. |
units |
TimeUnit: יחידות לערך שאינו אפס timeout |
| הקפצת הודעות שגיאה (throw) | |
|---|---|
IOException |
אם חלף הזמן להמתנה, אם לא ניתן להתקין קובץ APK או אם מתרחשת חריגה במהלך הטיפול בבקשות חסימה. |
InterruptedException |
|
waitForServingCompleted
public void waitForServingCompleted (long timeout,
TimeUnit units)חסימת השרשור הנוכחי עד שכל נתוני ה-APK יועברו למכשיר. יכול להיות שההתקנה תסתיים לפני או אחרי שההצגה תסתיים.
| פרמטרים | |
|---|---|
timeout |
long: משך הזמן המקסימלי להמתנה עד לסיום ההצגה. הערך 0 יגרום לשיטה הזו להמתין ללא הגבלת זמן. |
units |
TimeUnit: יחידות לערך שאינו אפס timeout |
| הקפצת הודעות שגיאה (throw) | |
|---|---|
IOException |
אם חלף הזמן להמתנה, אם לא ניתן להזרים קובץ APK או אם מתרחשת חריגה במהלך הטיפול בבקשות לחסימה. |
InterruptedException |
|