A partire dal 2026, per allinearci al nostro modello di sviluppo stabile del trunk e garantire la stabilità della piattaforma per l'ecosistema, pubblicheremo il codice sorgente su AOSP nel secondo e nel quarto trimestre. Per la creazione e il contributo ad AOSP, consigliamo di utilizzare android-latest-release anziché aosp-main. Il ramo del manifest android-latest-release farà sempre riferimento alla release più recente inviata ad AOSP. Per saperne di più, vedi Modifiche ad AOSP.
Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
ProcessUtil
public
final
class
ProcessUtil
extends Object
| java.lang.Object
|
| ↳ |
com.android.sts.common.ProcessUtil
|
Vari helper per trovare, attendere e terminare i processi sul dispositivo
Riepilogo
Metodi pubblici |
static
Optional<IFileEntry>
|
findFileLoadedByProcess(ITestDevice device, String process, String filenameSubstr)
Restituisce la voce del file del primo file caricato dal processo specificato con il nome specificato
|
static
Optional<List<String>>
|
findFilesLoadedByProcess(ITestDevice device, int pid, Pattern filePattern)
Restituisce i nomi dei file specificati, caricati dal processo specificato.
|
static
Optional<String>
|
getProcessName(ITestDevice device, int pid)
Recupera i contenuti da /proc/pid/cmdline.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs, boolean expectExist)
Invia SIGKILL a tutti i processi corrispondenti a un pattern.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs)
Invia SIGKILL a tutti i processi corrispondenti a un pattern.
|
static
void
|
killPid(ITestDevice device, int pid, long timeoutMs)
Invia SIGKILL a un processo e attendi che venga chiuso.
|
static
void
|
killPid(ITestDevice device, int pid, int signal, long timeoutMs)
Invia un segnale a un processo e attendi che venga chiuso.
|
static
Optional<List<String>>
|
listOpenFiles(ITestDevice device, int pid)
Restituisce i nomi dei file attualmente aperti del processo specificato.
|
static
Optional<Integer>
|
pidOf(ITestDevice device, String pgrepRegex)
Recupera un singolo pid corrispondente a un pattern passato a "pgrep".
|
static
Optional<Map<Integer, String>>
|
pidsOf(ITestDevice device, String pgrepRegex)
Recupera i pid corrispondenti a un pattern passato a "pgrep".
|
static
void
|
waitPidExited(ITestDevice device, int pid)
Attendi l'uscita da un processo.
|
static
void
|
waitPidExited(ITestDevice device, int pid, long timeoutMs)
Attendi l'uscita da un processo.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex, long timeoutMs)
Attendi fino a quando non viene trovato un processo in esecuzione per una determinata regex.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex)
Attendi fino a quando non viene trovato un processo in esecuzione per una determinata regex.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill, long timeoutMs)
Uccidere un processo all'inizio e alla fine di un test.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill)
Uccidere un processo all'inizio e alla fine di un test.
|
Costanti
PROCESS_POLL_PERIOD_MS
public static final long PROCESS_POLL_PERIOD_MS
Valore costante:
250
(0x00000000000000fa)
PROCESS_WAIT_TIMEOUT_MS
public static final long PROCESS_WAIT_TIMEOUT_MS
Valore costante:
10000
(0x0000000000002710)
Metodi pubblici
findFileLoadedByProcess
public static Optional<IFileEntry> findFileLoadedByProcess (ITestDevice device,
String process,
String filenameSubstr)
Restituisce la voce del file del primo file caricato dal processo specificato con il nome specificato
| Parametri |
device |
ITestDevice: dispositivo su cui eseguire il comando |
process |
String: pattern pgrep del processo da cercare |
filenameSubstr |
String: parte del nome/del percorso del file caricato dal processo |
| Ritorni |
Optional<IFileEntry> |
Un elemento facoltativo di IFileEntry del percorso del file sul dispositivo, se esistente.
|
| Lanci |
DeviceNotAvailableException |
|
findFilesLoadedByProcess
public static Optional<List<String>> findFilesLoadedByProcess (ITestDevice device,
int pid,
Pattern filePattern)
Restituisce i nomi dei file specificati, caricati dal processo specificato.
| Parametri |
device |
ITestDevice: dispositivo su cui eseguire il comando |
pid |
int: l'ID del processo da cercare |
filePattern |
Pattern: un pattern dei nomi dei file da restituire |
| Ritorni |
Optional<List<String>> |
Un valore facoltativo dei file filtrati; vuoto se il processo non è stato trovato o se non è stato possibile leggere i file aperti.
|
| Lanci |
DeviceNotAvailableException |
|
getProcessName
public static Optional<String> getProcessName (ITestDevice device,
int pid)
Recupera i contenuti da /proc/pid/cmdline.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pid |
int: l'ID del processo di cui recuperare il nome |
| Ritorni |
Optional<String> |
Una stringa facoltativa dei contenuti di /proc/pid/cmdline; vuota se non è stato possibile trovare il pid
|
| Lanci |
DeviceNotAvailableException |
|
killAll
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs,
boolean expectExist)
Invia SIGKILL a tutti i processi corrispondenti a un pattern.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pgrepRegex |
String: una stringa che rappresenta l'espressione regolare per pgrep |
timeoutMs |
long: il tempo di attesa prima di lanciare un'eccezione TimeoutException |
expectExist |
boolean: indica se deve essere lanciata un'eccezione quando non sono stati interrotti processi |
| Ritorni |
boolean |
se sono stati interrotti processi
|
killAll
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs)
Invia SIGKILL a tutti i processi corrispondenti a un pattern.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pgrepRegex |
String: una stringa che rappresenta l'espressione regolare per pgrep |
timeoutMs |
long: il tempo di attesa prima di lanciare un'eccezione TimeoutException |
| Ritorni |
boolean |
se sono stati interrotti processi
|
killPid
public static void killPid (ITestDevice device,
int pid,
long timeoutMs)
Invia SIGKILL a un processo e attendi che venga chiuso.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pid |
int: l'ID del processo in attesa dell'uscita |
timeoutMs |
long: il tempo di attesa prima di lanciare un'eccezione TimeoutException
|
killPid
public static void killPid (ITestDevice device,
int pid,
int signal,
long timeoutMs)
Invia un segnale a un processo e attendi che venga chiuso.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pid |
int: l'ID del processo in attesa dell'uscita |
signal |
int: l'indicatore da inviare al processo |
timeoutMs |
long: il tempo di attesa prima di lanciare un'eccezione TimeoutException
|
listOpenFiles
public static Optional<List<String>> listOpenFiles (ITestDevice device,
int pid)
Restituisce i nomi dei file attualmente aperti del processo specificato.
| Parametri |
device |
ITestDevice: dispositivo su cui eseguire il comando |
pid |
int: l'ID del processo da cercare |
| Ritorni |
Optional<List<String>> |
Un Optional dei file aperti; vuoto se il processo non è stato trovato o se non è stato possibile leggere i file aperti.
|
| Lanci |
DeviceNotAvailableException |
|
pidOf
public static Optional<Integer> pidOf (ITestDevice device,
String pgrepRegex)
Recupera un singolo pid corrispondente a un pattern passato a "pgrep". Genera un IllegalArgumentException quando sono presenti più PID corrispondenti al pattern.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pgrepRegex |
String: una stringa che rappresenta l'espressione regolare per pgrep |
| Ritorni |
Optional<Integer> |
Un numero intero facoltativo del pid; vuoto se pgrep non ha restituito EXIT_SUCCESS
|
| Lanci |
DeviceNotAvailableException |
|
IllegalArgumentException |
|
pidsOf
public static Optional<Map<Integer, String>> pidsOf (ITestDevice device,
String pgrepRegex)
Recupera i pid corrispondenti a un pattern passato a "pgrep". Poiché /proc/pid/comm è troncato,
"pgrep" viene passato con "-f" per controllare la riga di comando completa.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pgrepRegex |
String: una stringa che rappresenta l'espressione regolare per pgrep |
| Ritorni |
Optional<Map<Integer, String>> |
una mappa facoltativa del pid alla riga di comando; vuota se pgrep non ha restituito EXIT_SUCCESS
|
| Lanci |
DeviceNotAvailableException |
|
waitPidExited
public static void waitPidExited (ITestDevice device,
int pid)
Attendi l'uscita da un processo. Non si tratta di aspettare che cambi, ma semplicemente di non essere presente. È possibile, ma improbabile, che un pid venga riutilizzato tra un sondaggio e l'altro
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pid |
int: l'ID del processo in attesa dell'uscita
|
waitPidExited
public static void waitPidExited (ITestDevice device,
int pid,
long timeoutMs)
Attendi l'uscita da un processo. Non si tratta di aspettare che cambi, ma semplicemente di non essere presente. È possibile, ma improbabile, che un pid venga riutilizzato tra un sondaggio e l'altro
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pid |
int: l'ID del processo in attesa dell'uscita |
timeoutMs |
long: il tempo di attesa prima di lanciare un'eccezione TimeoutException
|
waitProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex,
long timeoutMs)
Attendi fino a quando non viene trovato un processo in esecuzione per una determinata regex.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pgrepRegex |
String: una stringa che rappresenta l'espressione regolare per pgrep |
timeoutMs |
long: il tempo di attesa prima di lanciare un'eccezione TimeoutException |
| Ritorni |
Map<Integer, String> |
la mappa del pid al comando da pidsOf(...)
|
| Lanci |
TimeoutException |
|
DeviceNotAvailableException |
|
waitProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex)
Attendi fino a quando non viene trovato un processo in esecuzione per una determinata regex.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pgrepRegex |
String: una stringa che rappresenta l'espressione regolare per pgrep |
| Ritorni |
Map<Integer, String> |
la mappa del pid al comando da pidsOf(...)
|
| Lanci |
TimeoutException |
|
DeviceNotAvailableException |
|
withProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill,
long timeoutMs)
Uccidere un processo all'inizio e alla fine di un test.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pgrepRegex |
String: il pattern del nome del processo da uccidere da passare a pgrep |
beforeCloseKill |
Runnable: un file eseguibile per tutte le azioni che devono essere eseguite prima di interrompere il processo in un ambiente normale al termine del test. Può essere null. |
timeoutMs |
long: il tempo in millisecondi da attendere per l'interruzione del processo |
| Ritorni |
AutoCloseable |
Un oggetto che ucciderà di nuovo il processo quando viene chiuso
|
withProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill)
Uccidere un processo all'inizio e alla fine di un test.
| Parametri |
device |
ITestDevice: il dispositivo da utilizzare |
pgrepRegex |
String: il pattern del nome del processo da uccidere da passare a pgrep |
beforeCloseKill |
Runnable: un file eseguibile per tutte le azioni che devono essere eseguite prima di interrompere il processo in un ambiente normale al termine del test. Può essere null. |
| Ritorni |
AutoCloseable |
Un oggetto che ucciderà di nuovo il processo quando viene chiuso
|
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2025-07-27 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-07-27 UTC."],[],[]]