החל משנת 2026, כדי להתאים את התהליך למודל הפיתוח היציב שלנו ולשמור על יציבות הפלטפורמה בסביבה העסקית, נפרסם קוד מקור ב-AOSP ברבעון השני וברבעון הרביעי. כדי ליצור תוספים ל-AOSP ולתרום לו, מומלץ להשתמש ב-android-latest-release במקום ב-aosp-main. ענף המניפסט android-latest-release תמיד יפנה לגרסה העדכנית ביותר שנדחפה ל-AOSP. מידע נוסף זמין במאמר שינויים ב-AOSP.
Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
ProcessUtil
public
final
class
ProcessUtil
extends Object
| java.lang.Object
|
| ↳ |
com.android.sts.common.ProcessUtil
|
פונקציות עזר שונות לאיתור תהליכים במכשיר, להמתנה להם ולסגירתם
סיכום
שיטות ציבוריות |
static
Optional<IFileEntry>
|
findFileLoadedByProcess(ITestDevice device, String process, String filenameSubstr)
הפונקציה מחזירה את הרשומה של הקובץ הראשון שנטען על ידי התהליך שצוין בשם שצוין
|
static
Optional<List<String>>
|
findFilesLoadedByProcess(ITestDevice device, int pid, Pattern filePattern)
הפונקציה מחזירה את שמות הקבצים של הקובץ שצוין, שנטען על ידי התהליך שצוין.
|
static
Optional<String>
|
getProcessName(ITestDevice device, int pid)
מקבלים את התוכן מ-/proc/pid/cmdline.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs, boolean expectExist)
שליחת SIGKILL לכל התהליכים שתואמים לדפוס.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs)
שליחת SIGKILL לכל התהליכים שתואמים לדפוס.
|
static
void
|
killPid(ITestDevice device, int pid, long timeoutMs)
שולחים SIGKILL לתהליך וממתינים לסיום הפעולה שלו.
|
static
void
|
killPid(ITestDevice device, int pid, int signal, long timeoutMs)
שליחת אות לתהליך והמתנה לסיום שלו.
|
static
Optional<List<String>>
|
listOpenFiles(ITestDevice device, int pid)
הפונקציה מחזירה את שמות הקבצים הפתוחים של התהליך שצוין.
|
static
Optional<Integer>
|
pidOf(ITestDevice device, String pgrepRegex)
הצגת pid יחיד שתואמת לתבנית שהועברה ל-`pgrep`.
|
static
Optional<Map<Integer, String>>
|
pidsOf(ITestDevice device, String pgrepRegex)
הצגת מזהי ה-pid שתואמים לדפוס שהוענק ל-`pgrep`.
|
static
void
|
waitPidExited(ITestDevice device, int pid)
המתנה לסיום תהליך.
|
static
void
|
waitPidExited(ITestDevice device, int pid, long timeoutMs)
המתנה לסיום תהליך.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex, long timeoutMs)
המתנה עד שמוצאים תהליך פעיל לביטוי רגולרי נתון.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex)
המתנה עד שמוצאים תהליך פעיל לביטוי רגולרי נתון.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill, long timeoutMs)
סגירת תהליך בתחילת הבדיקה ובסופה.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill)
סגירת תהליך בתחילת הבדיקה ובסופה.
|
קבועים
PROCESS_POLL_PERIOD_MS
public static final long PROCESS_POLL_PERIOD_MS
ערך קבוע:
250
(0x00000000000000fa)
PROCESS_WAIT_TIMEOUT_MS
public static final long PROCESS_WAIT_TIMEOUT_MS
ערך קבוע:
10000
(0x0000000000002710)
שיטות ציבוריות
findFileLoadedByProcess
public static Optional<IFileEntry> findFileLoadedByProcess (ITestDevice device,
String process,
String filenameSubstr)
הפונקציה מחזירה את הרשומה של הקובץ הראשון שנטען על ידי התהליך שצוין בשם שצוין
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להריץ את הסקריפט |
process |
String: תבנית pgrep של התהליך שרוצים לחפש |
filenameSubstr |
String: חלק משם הקובץ או מהנתיב שלו שנטענו על ידי התהליך |
| החזרות |
Optional<IFileEntry> |
אפשרות אופציונלית של IFileEntry של הנתיב של הקובץ במכשיר, אם הוא קיים.
|
| זריקות |
DeviceNotAvailableException |
|
findFilesLoadedByProcess
public static Optional<List<String>> findFilesLoadedByProcess (ITestDevice device,
int pid,
Pattern filePattern)
הפונקציה מחזירה את שמות הקבצים של הקובץ שצוין, שנטען על ידי התהליך שצוין.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להריץ את הבדיקה |
pid |
int: המזהה של התהליך לחיפוש |
filePattern |
Pattern: דפוס של שמות הקבצים להחזרה |
| החזרות |
Optional<List<String>> |
רשימה אופציונלית של הקבצים המסוננים. אם התהליך לא נמצא או שלא ניתן לקרוא את הקבצים הפתוחים, הערך יהיה ריק.
|
| זריקות |
DeviceNotAvailableException |
|
getProcessName
public static Optional<String> getProcessName (ITestDevice device,
int pid)
מקבלים את התוכן מ-/proc/pid/cmdline.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pid |
int: המזהה של התהליך שרוצים לקבל את השם שלו |
| החזרות |
Optional<String> |
מחרוזת אופציונלית של התוכן של /proc/pid/cmdline. המחרוזת תהיה ריקה אם לא ניתן למצוא את ה-pid.
|
| זריקות |
DeviceNotAvailableException |
|
killAll
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs,
boolean expectExist)
שליחת SIGKILL לכל התהליכים שתואמים לדפוס.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pgrepRegex |
String: מחרוזת שמייצגת את הביטוי הרגולרי של pgrep |
timeoutMs |
long: משך הזמן להמתנה לפני השלכת TimeoutException |
expectExist |
boolean: האם להפעיל חריגה כשלא נהרגו תהליכים |
| החזרות |
boolean |
אם תהליכים כלשהם הושמדו
|
killAll
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs)
שליחת SIGKILL לכל התהליכים שתואמים לדפוס.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pgrepRegex |
String: מחרוזת שמייצגת את הביטוי הרגולרי של pgrep |
timeoutMs |
long: משך הזמן להמתנה לפני השלכת TimeoutException |
| החזרות |
boolean |
אם תהליכים כלשהם הושמדו
|
killPid
public static void killPid (ITestDevice device,
int pid,
long timeoutMs)
שולחים SIGKILL לתהליך וממתינים לסיום הפעולה שלו.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pid |
int: המזהה של התהליך שצריך להמתין עד לסיום שלו |
timeoutMs |
long: משך הזמן להמתנה לפני השלכת TimeoutException
|
killPid
public static void killPid (ITestDevice device,
int pid,
int signal,
long timeoutMs)
שליחת אות לתהליך והמתנה לסיום שלו.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pid |
int: המזהה של התהליך שצריך להמתין עד לסיום שלו |
signal |
int: האות ששולחים לתהליך |
timeoutMs |
long: משך הזמן להמתנה לפני השלכת TimeoutException
|
listOpenFiles
public static Optional<List<String>> listOpenFiles (ITestDevice device,
int pid)
הפונקציה מחזירה את שמות הקבצים הפתוחים של התהליך שצוין.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להריץ את הבדיקה |
pid |
int: המזהה של התהליך לחיפוש |
| החזרות |
Optional<List<String>> |
רשימה אופציונלית של הקבצים הפתוחים. אם התהליך לא נמצא או שלא ניתן היה לקרוא את הקבצים הפתוחים, הערך יהיה ריק.
|
| זריקות |
DeviceNotAvailableException |
|
pidOf
public static Optional<Integer> pidOf (ITestDevice device,
String pgrepRegex)
הצגת PID יחיד שתואם לדפוס שהוענק ל-`pgrep`. השלכת IllegalArgumentException אם יש יותר מ-PID אחד שתואם לדפוס.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pgrepRegex |
String: מחרוזת שמייצגת את הביטוי הרגולרי של pgrep |
| החזרות |
Optional<Integer> |
מספר שלם אופציונלי של pid. אם הפונקציה pgrep לא החזירה את EXIT_SUCCESS, הערך יהיה ריק.
|
| זריקות |
DeviceNotAvailableException |
|
IllegalArgumentException |
|
pidsOf
public static Optional<Map<Integer, String>> pidsOf (ITestDevice device,
String pgrepRegex)
הצגת מזהי ה-pid שתואמים לדפוס שהוענק ל-`pgrep`. מכיוון ש-/proc/pid/comm קטועה, הפקודה pgrep מועברת עם -f כדי לבדוק את שורת הפקודה המלאה.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pgrepRegex |
String: מחרוזת שמייצגת את הביטוי הרגולרי של pgrep |
| החזרות |
Optional<Map<Integer, String>> |
מיפוי אופציונלי של pid לשורת הפקודה. המיפוי יהיה ריק אם הפקודה pgrep לא החזירה את הערך EXIT_SUCCESS.
|
| זריקות |
DeviceNotAvailableException |
|
waitPidExited
public static void waitPidExited (ITestDevice device,
int pid)
המתנה לסיום תהליך. אין צורך לחכות שהיא תשתנה, אלא פשוט לא צריך אותה. יכול להיות (אבל לא סביר) ש-pid ישמש שוב בין סקרים
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pid |
int: המזהה של התהליך שצריך להמתין עד לסיום שלו
|
waitPidExited
public static void waitPidExited (ITestDevice device,
int pid,
long timeoutMs)
המתנה לסיום תהליך. אין צורך לחכות שהיא תשתנה, אלא פשוט לא צריך אותה. יכול להיות (אבל לא סביר) ש-pid ישמש שוב בין סקרים
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pid |
int: המזהה של התהליך שצריך להמתין עד לסיום שלו |
timeoutMs |
long: משך הזמן להמתנה לפני השלכת TimeoutException
|
waitProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex,
long timeoutMs)
המתנה עד שמוצאים תהליך פעיל לביטוי רגולרי נתון.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pgrepRegex |
String: מחרוזת שמייצגת את הביטוי הרגולרי של pgrep |
timeoutMs |
long: משך הזמן להמתנה לפני השלכת TimeoutException |
| החזרות |
Map<Integer, String> |
המיפוי של pid לפקודה מ-pidsOf(...)
|
| זריקות |
TimeoutException |
|
DeviceNotAvailableException |
|
waitProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex)
המתנה עד שמוצאים תהליך פעיל לביטוי רגולרי נתון.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pgrepRegex |
String: מחרוזת שמייצגת את הביטוי הרגולרי של pgrep |
| החזרות |
Map<Integer, String> |
המיפוי של pid לפקודה מ-pidsOf(...)
|
| זריקות |
TimeoutException |
|
DeviceNotAvailableException |
|
withProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill,
long timeoutMs)
סגירת תהליך בתחילת הבדיקה ובסופה.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pgrepRegex |
String: תבנית השם של התהליך שרוצים להרוג, שצריך לתת ל-pgrep |
beforeCloseKill |
Runnable: קובץ הפעלה לכל הפעולות שצריך לבצע כדי לנקות לפני שמפסיקים את התהליך בסביבה רגילה בסוף הבדיקה. הערך יכול להיות null. |
timeoutMs |
long: משך הזמן באלפיות השנייה שצריך להמתין עד שהתהליך יופסק |
| החזרות |
AutoCloseable |
אובייקט שיגרום שוב לסגירת התהליך
|
withProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill)
סגירת תהליך בתחילת הבדיקה ובסופה.
| פרמטרים |
device |
ITestDevice: המכשיר שבו רוצים להשתמש |
pgrepRegex |
String: תבנית השם של התהליך שרוצים להרוג, שצריך לתת ל-pgrep |
beforeCloseKill |
Runnable: קובץ הפעלה לכל הפעולות שצריך לבצע כדי לנקות לפני שמפסיקים את התהליך בסביבה רגילה בסוף הבדיקה. הערך יכול להיות null. |
| החזרות |
AutoCloseable |
אובייקט שיגרום שוב לסגירת התהליך
|
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-27 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-07-27 (שעון UTC)."],[],[]]