Détecter " bouton home enfoncé en android service de l'affichage d'une INTERFACE utilisateur (similaire à facebook chatheads)

Dans facebook chatheads, qui font partie de l'facebook messenger app, j'ai remarqué que le comportement suivant:
Aussi loin que je peux voir, le chat de la tête elle-même et l'ouverture de la fenêtre de discussion de toutes les pièces d'un service. Aucune activité n'est impliqué.

Comment puis-je en être sûr?
Après j'maison de presse sur l'ouverture d'un écran de chat, il se réduit à dos une tête de chat, et je peux rouvrir immédiatement l'écran de chat. Si l'écran de chat est une activité, puis la réouverture de l'activité via startActivity(intent) après la maison de bouton a été pressé, serait de retarder le début de l'activité, comme indiqué ici:
Le démarrage d'une activité à partir d'un service après bouton HOME enfoncé sans retard de 5 secondes

et ici: Raison pour 5 sec de retard de montrer une activité en appuyant sur le bouton home?

dans mon service méthode onCreate, j'utilise le code suivant pour afficher une INTERFACE utilisateur de service:

public class ServiceTest extends Service {
...
    @Override 
    public void onCreate() {
        super.onCreate();

        windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);

        WindowManager.LayoutParams params = new WindowManager.LayoutParams(
            WindowManager.LayoutParams.WRAP_CONTENT,
            WindowManager.LayoutParams.WRAP_CONTENT,
            WindowManager.LayoutParams.TYPE_PHONE,
            WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
            PixelFormat.TRANSLUCENT);

        windowManager.addView(someView, params);
    }
....
}

Quelqu'un a une idée de comment puis-je recevoir le bouton "accueil pressé' événement directement à partir d'un service de l'affichage d'une INTERFACE utilisateur? Je voudrais réduire ma vue (similaire à facebook chat heads) lorsque l'utilisateur appuie sur le bouton home.

  • J'ai été supprised de voir que vous avez droit. J'ai fait ma propre expérience, et en effet l'activité qui était en forgreound n'est pas en pause lorsque les messages popup ouvert => ce qui prouve qu'aucune nouvelle activité. Je vais faire mes recherches, comment est-ce possible. c'est en effet intéressant
  • Merci! en espérant que votre recherche sera mieux la mienne alors...
  • Notons en passant qu'ils ont aussi attraper les tâches récentes bouton, si c'est d'une quelconque aide.
  • Comment voulez-vous commencer votre service?
  • En utilisant startService(new Intent(this, ServiceTest.class) à partir d'une activité, mais je peux aussi commencer par la liaison à partir d'une activité. Comment est-ce pertinent?
  • Vous pouvez écouter aux actions de l'utilisateur à partir de cette activité
  • J'utilise startService, et l'appel de l'activité n'est pas garanti pour rester en vie. Et comme mentionné dans mon post et @Tal Kanel commentaire, le facebook chathead fonctionnalité n'utilisez pas une activité pour détecter le bouton home enfoncé événement.