Comment masquer l'icône de l'application à partir de l'Android Desktop?

J'ai défini une application qui est utilisé uniquement à partir de mon autre application. Donc, je tiens à masquer l'icône de cette application, de sorte que l'utilisateur ne peut pas le voir sur l'écran de son téléphone (ou comment appelez-vous la chose où toutes les applications sont répertoriées?). Mon manifeste fichier se présente de la manière suivante:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="xyz.games.pacman.controller"
      android:versionCode="1"
      android:versionName="1.0">

      <uses-permission android:name="android.permission.BLUETOOTH"/>

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".PacmanGame"
                  android:label="@string/app_name"
                  android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="pacman.intent.action.Launch" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

         <receiver android:name="xyz.games.pacman.network.MessageListener">
         <intent-filter>
            <action android:name="xyz.games.pacman.controller.BROADCAST" />
            </intent-filter>
         </receiver>

    </application>
    <uses-sdk android:minSdkVersion="7" />
</manifest> 

J'ai déjà lu cette question:

Comment masquer une icône de l'application dans l'émulateur Android?

mais si je viens de supprimer la ligne

<category android:name="android.intent.category.DEFAULT" />

dans mon manifeste, l'activité ne fonctionne pas du tout (ActivityNotFoundException dans l'appel de l'activité).

Tout conseils sur la façon de résoudre ce problème? J'ai déjà essayé android.l'intention.de la catégorie.INCORPORÉ, mais cela ne fonctionne pas trop.

Dans l'Internet, j'ai trouvé CommonsWare réponse http://osdir.com/ml/Android-Developers/2010-06/msg03617.html que cela peut être fait en utilisant PackageManager. Malheureusement, il n'est pas expliqué comment exactement et je ne pouvais pas trouver une solution en parcourant le PackageManager API.

OriginalL'auteur | 2010-07-06