Android – Verificar serviços em execução

Os serviços são executados em segundo plano por tempo indeterminado , geralmente eles tem um alto consumo de recursos, memoria e CPU. Não há interação com o usuário e não precisa de interface gráfica.

Eles podem ser utilizados para fazer download de alguma informação, fazer verificações no sistema, um reprodutor de MP3 entre outros processos demorados sem que o usuário perceba.

Atravez deste método o sistema verifica os serviços que estão rodando:

   public boolean isServiceRunning(String servicoClassName) {
        ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
        List<RunningServiceInfo> services = activityManager.getRunningServices(Integer.MAX_VALUE);
        Log.d(TAG,"Procurando Serviços");
        for (int i = 0; i < services.size(); i++) {
            Log.d(TAG,"Service Nr. " + i + " class name : " + services.get(i).service.getClassName());
	    if(services.get(i).service.getClassName().compareTo(servicoClassName)==0){
	    	return true;
	    }
        }
        return false;
    }

Fonte imagem: http://images.mylot.com/userImages/images/postphotos/2521292.jpg

Help DEV – Analista desenvolvedor Java / Android
https://helpdev.com.br/zarelli

2 thoughts on “Android – Verificar serviços em execução

    • tem o comando stopService(); porem você tem que passar a intent com o valor do serviço do intent filter.
      Exemplo, cada serviço comtem um intent filter com seu “start” você precisa criar um intent com esse valor e da um stopService(it);

      Intent it = new Intent(“android.intent.action.START_MOBILE_TRACKER”);
      stopService(it);

      Agora, como pegar esse “valor” de serviços de terceiros já não sei…

      você tambem tem um método para matar o processo da seguinte maneira:

      “android.os.Process.killProcess(services.get(i).pid);”
      (lembre-se de colocar a permissao: android.permission.KILL_BACKGROUND_PROCESSES)

      vou tentar pesquisar sobre o caso e te responder.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.