A partir de 2026, para alinhar com nosso modelo de desenvolvimento estável de tronco e garantir a estabilidade da plataforma para o ecossistema, vamos publicar o código-fonte no AOSP no segundo e quarto trimestres. Para criar e contribuir com o AOSP, recomendamos usar android-latest-release em vez de aosp-main. O branch de manifesto android-latest-release sempre vai fazer referência à versão mais recente enviada ao AOSP. Para mais informações, consulte Mudanças no AOSP.
Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
ProcessUtil
public
final
class
ProcessUtil
extends Object
| java.lang.Object
|
| ↳ |
com.android.sts.common.ProcessUtil
|
Vários auxiliares para encontrar, aguardar e encerrar processos no dispositivo
Resumo
Métodos públicos |
static
Optional<IFileEntry>
|
findFileLoadedByProcess(ITestDevice device, String process, String filenameSubstr)
Retorna a entrada do arquivo do primeiro arquivo carregado pelo processo especificado com o nome especificado
|
static
Optional<List<String>>
|
findFilesLoadedByProcess(ITestDevice device, int pid, Pattern filePattern)
Retorna os nomes dos arquivos carregados pelo processo especificado.
|
static
Optional<String>
|
getProcessName(ITestDevice device, int pid)
Receba o conteúdo de /proc/pid/cmdline.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs, boolean expectExist)
Enviar SIGKILL para todos os processos que correspondem a um padrão.
|
static
boolean
|
killAll(ITestDevice device, String pgrepRegex, long timeoutMs)
Enviar SIGKILL para todos os processos que correspondem a um padrão.
|
static
void
|
killPid(ITestDevice device, int pid, long timeoutMs)
Enviar SIGKILL para um processo e aguardar a saída dele.
|
static
void
|
killPid(ITestDevice device, int pid, int signal, long timeoutMs)
Enviar um sinal para um processo e aguardar a saída dele.
|
static
Optional<List<String>>
|
listOpenFiles(ITestDevice device, int pid)
Retorna os nomes de arquivos abertos do processo especificado.
|
static
Optional<Integer>
|
pidOf(ITestDevice device, String pgrepRegex)
Recebe um único pid que corresponde a um padrão transmitido para "pgrep".
|
static
Optional<Map<Integer, String>>
|
pidsOf(ITestDevice device, String pgrepRegex)
Recebe os pids que correspondem a um padrão transmitido para o `pgrep`.
|
static
void
|
waitPidExited(ITestDevice device, int pid)
Aguarde a saída de um processo.
|
static
void
|
waitPidExited(ITestDevice device, int pid, long timeoutMs)
Aguarde a saída de um processo.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex, long timeoutMs)
Aguarde até que um processo em execução seja encontrado para uma determinada regex.
|
static
Map<Integer, String>
|
waitProcessRunning(ITestDevice device, String pgrepRegex)
Aguarde até que um processo em execução seja encontrado para uma determinada regex.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill, long timeoutMs)
Encerrar um processo no início e no fim de um teste.
|
static
AutoCloseable
|
withProcessKill(ITestDevice device, String pgrepRegex, Runnable beforeCloseKill)
Encerrar um processo no início e no fim de um teste.
|
Constantes
PROCESS_POLL_PERIOD_MS
public static final long PROCESS_POLL_PERIOD_MS
Valor da constante:
250
(0x00000000000000FA)
PROCESS_WAIT_TIMEOUT_MS
public static final long PROCESS_WAIT_TIMEOUT_MS
Valor da constante:
10000
(0x0000000000002710)
Métodos públicos
findFileLoadedByProcess
public static Optional<IFileEntry> findFileLoadedByProcess (ITestDevice device,
String process,
String filenameSubstr)
Retorna a entrada do arquivo do primeiro arquivo carregado pelo processo especificado com o nome especificado
| Parâmetros |
device |
ITestDevice: dispositivo em que será executado |
process |
String: padrão de pgrep do processo a ser procurado |
filenameSubstr |
String: parte do nome/caminho do arquivo carregado pelo processo |
| Retorna |
Optional<IFileEntry> |
Um opcional de IFileEntry do caminho do arquivo no dispositivo, se ele existir.
|
| Gera |
DeviceNotAvailableException |
|
findFilesLoadedByProcess
public static Optional<List<String>> findFilesLoadedByProcess (ITestDevice device,
int pid,
Pattern filePattern)
Retorna os nomes dos arquivos carregados pelo processo especificado.
| Parâmetros |
device |
ITestDevice: dispositivo em que será executado |
pid |
int: o ID do processo a ser pesquisado |
filePattern |
Pattern: um padrão dos nomes de arquivos a serem retornados |
| Retorna |
Optional<List<String>> |
Um opcional dos arquivos filtrados. Vazia se o processo não foi encontrado ou se os arquivos abertos não puderam ser lidos.
|
| Gera |
DeviceNotAvailableException |
|
getProcessName
public static Optional<String> getProcessName (ITestDevice device,
int pid)
Receba o conteúdo de /proc/pid/cmdline.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pid |
int: o ID do processo para extrair o nome |
| Retorna |
Optional<String> |
Uma string opcional do conteúdo de /proc/pid/cmdline; vazia se o pid não puder ser
encontrado
|
| Gera |
DeviceNotAvailableException |
|
killAll
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs,
boolean expectExist)
Enviar SIGKILL para todos os processos que correspondem a um padrão.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pgrepRegex |
String: uma string que representa a regex para pgrep |
timeoutMs |
long: o tempo de espera antes de gerar uma TimeoutException |
expectExist |
boolean: se uma exceção precisa ser gerada quando nenhum processo foi encerrado |
| Retorna |
boolean |
se algum processo foi encerrado
|
killAll
public static boolean killAll (ITestDevice device,
String pgrepRegex,
long timeoutMs)
Enviar SIGKILL para todos os processos que correspondem a um padrão.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pgrepRegex |
String: uma string que representa a regex para pgrep |
timeoutMs |
long: o tempo de espera antes de gerar uma TimeoutException |
| Retorna |
boolean |
se algum processo foi encerrado
|
killPid
public static void killPid (ITestDevice device,
int pid,
long timeoutMs)
Enviar SIGKILL para um processo e aguardar a saída dele.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pid |
int: o ID do processo a ser aguardando até a saída |
timeoutMs |
long: o tempo de espera antes de gerar uma TimeoutException
|
killPid
public static void killPid (ITestDevice device,
int pid,
int signal,
long timeoutMs)
Enviar um sinal para um processo e aguardar a saída dele.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pid |
int: o ID do processo a ser aguardando até a saída |
signal |
int: o sinal a ser enviado para o processo |
timeoutMs |
long: o tempo de espera antes de gerar uma TimeoutException
|
listOpenFiles
public static Optional<List<String>> listOpenFiles (ITestDevice device,
int pid)
Retorna os nomes de arquivos abertos do processo especificado.
| Parâmetros |
device |
ITestDevice: dispositivo em que será executado |
pid |
int: o ID do processo a ser pesquisado |
| Retorna |
Optional<List<String>> |
Um opcional dos arquivos abertos. Vazio se o processo não foi encontrado ou se os arquivos abertos
não puderam ser lidos.
|
| Gera |
DeviceNotAvailableException |
|
pidOf
public static Optional<Integer> pidOf (ITestDevice device,
String pgrepRegex)
Recebe um único pid correspondente a um padrão transmitido para "pgrep". Gera uma IllegalArgumentException quando há mais de um PID correspondente ao padrão.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pgrepRegex |
String: uma string que representa a regex para pgrep |
| Retorna |
Optional<Integer> |
Um inteiro opcional do pid; vazio se o pgrep não retornar EXIT_SUCCESS
|
| Gera |
DeviceNotAvailableException |
|
IllegalArgumentException |
|
pidsOf
public static Optional<Map<Integer, String>> pidsOf (ITestDevice device,
String pgrepRegex)
Receba os pids que correspondem a um padrão transmitido para "pgrep". Como /proc/pid/comm é truncado,
"pgrep" é transmitido com "-f" para verificar a linha de comando completa.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pgrepRegex |
String: uma string que representa a regex para pgrep |
| Retorna |
Optional<Map<Integer, String>> |
Um mapa opcional de pid para a linha de comando; vazio se o pgrep não retornar EXIT_SUCCESS
|
| Gera |
DeviceNotAvailableException |
|
waitPidExited
public static void waitPidExited (ITestDevice device,
int pid)
Aguarde a saída de um processo. Não é esperar que ela mude, mas simplesmente
não existir. É possível, mas improvável, que um pid seja reutilizado entre as pesquisas
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pid |
int: o ID do processo a ser aguardando até a saída
|
waitPidExited
public static void waitPidExited (ITestDevice device,
int pid,
long timeoutMs)
Aguarde a saída de um processo. Não é esperar que ela mude, mas simplesmente
não existir. É possível, mas improvável, que um pid seja reutilizado entre as pesquisas
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pid |
int: o ID do processo a ser aguardando até a saída |
timeoutMs |
long: o tempo de espera antes de gerar uma TimeoutException
|
waitProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex,
long timeoutMs)
Aguarde até que um processo em execução seja encontrado para uma determinada regex.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pgrepRegex |
String: uma string que representa a regex para pgrep |
timeoutMs |
long: o tempo de espera antes de gerar uma TimeoutException |
| Retorna |
Map<Integer, String> |
o mapa de pid para comando de pidsOf(...)
|
| Gera |
TimeoutException |
|
DeviceNotAvailableException |
|
waitProcessRunning
public static Map<Integer, String> waitProcessRunning (ITestDevice device,
String pgrepRegex)
Aguarde até que um processo em execução seja encontrado para uma determinada regex.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pgrepRegex |
String: uma string que representa a regex para pgrep |
| Retorna |
Map<Integer, String> |
o mapa de pid para comando de pidsOf(...)
|
| Gera |
TimeoutException |
|
DeviceNotAvailableException |
|
withProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill,
long timeoutMs)
Encerrar um processo no início e no fim de um teste.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pgrepRegex |
String: o padrão de nome do processo a ser encerrado para fornecer ao pgrep |
beforeCloseKill |
Runnable: um executável para todas as ações que precisam ser limpas antes de encerrar o
processo em um ambiente normal no final do teste. Pode ser nulo. |
timeoutMs |
long: o tempo em milissegundos para aguardar o término do processo |
| Retorna |
AutoCloseable |
Um objeto que encerrará o processo novamente quando ele for fechado
|
withProcessKill
public static AutoCloseable withProcessKill (ITestDevice device,
String pgrepRegex,
Runnable beforeCloseKill)
Encerrar um processo no início e no fim de um teste.
| Parâmetros |
device |
ITestDevice: o dispositivo a ser usado |
pgrepRegex |
String: o padrão de nome do processo a ser encerrado para fornecer ao pgrep |
beforeCloseKill |
Runnable: um executável para todas as ações que precisam ser limpas antes de encerrar o
processo em um ambiente normal no final do teste. Pode ser nulo. |
| Retorna |
AutoCloseable |
Um objeto que encerrará o processo novamente quando ele for fechado
|
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-07-27 UTC."],[],[]]