A partir de 27 de março de 2025, recomendamos usar android-latest-release
em vez de aosp-main
para criar e contribuir com o AOSP. Para mais informações, consulte Mudanças no AOSP.
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-03-26 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-03-26 UTC."],[],[]]