Listando os processos ativos no Android utilizando ps

No artigo anterior mostrei como obter os processos executando no Android sem utilizar o comando ps do Linux. Como apresentei em nota, não era possível obter os processos internos do Linux Android utilizando o ActivityManager, visto que, ele somente registra aquilo que diz respeito à gestão interna de activities e services. Pra obter todos os processos do Liniux Android você deve recorrer ao bom e velho ps. Existem dois limitadores para o uso deste recurso. O primeiro é que somente funcionar em dispositivos rooteados. O segundo que exige uma chamada direta do exec do sistema operacional, o que pode ocasionar travamentos e congestionamentos de chamadas na aplicação. Então , utilize este método de obtenção de serviços com cuidado.

            BufferedReader input = null;

            try {

                Process p = Runtime.getRuntime().exec(new String[] { “su”, “-c”, “ps | grep o que voce quiser” });
    
                input = new BufferedReader(new InputStreamReader(p.getInputStream()));
    
                        String line = “”;

                while ((line = input.readLine()) != null) {
                            // Faca o que desejar com line
                }
                    
                    
            } catch (Exception ex) {
                ex.printStackTrace();
            } finally {
                try { input.close(); } catch (Exception e1) {}
            }

ATENÇÃO: CERTIFIQUE-SE QUE SEU DISPOSITIVO ESTEJA ROOTEADO E CONTENHA O BUSYBOX INSTALADO DIRETO DO GOOGLE PLAY

Add Comment

Your email address will not be published. Required fields are marked *

Phone: (31) 3646-1612
Fax: (31) 3646-1614
Loja 01, Lourdes, Belo Horizonte/MG
Rua Rio de Janeiro, 1278