J'ai une application qui a un service et 2 activités.Une activité (la principale) est une activité de préférences et l'autre est une activité thématique de dialogue. Le service doit de temps en temps ouvrir uniquement l'activité thématique de dialogue (en utilisant FLAG_ACTIVITY_NEW_TASK). Le problème est que lorsque l'activité des préférences est ouverte en arrière-plan (par exemple l'utilisateur appuie sur la touche HOME au lieu de BACK, l'activité est OnPause) et le service tente d'ouvrir l'activité thématique de dialogue, l'activité principale est également ouverte. au premier plan). Je ne veux pas ça. Alors, comment puis-je ouvrir uniquement l'activité thématique du service, sans que l'activité principale n'apparaisse?Ouvrir une seule activité, sans l'activité principale
Android Manifest .xml
<service android:name=".SimpleService"> </service>
<activity
android:name=".Preferences" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".popup_activity" android:theme="@android:style/Theme.Dialog" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.SAMPLE_CODE" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="screenon.popup.activity" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
Et du service:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.addCategory("screenon.popup.activity");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
Cela ressemble à une idée terrible. Ne pas ouvrir les fenêtres sans l'intervention de l'utilisateur – Falmarri
Ceci est un autre problème, oublions le service et disons que l'activité de dialogue est ouverte à partir d'une autre activité. Le problème persiste – Alex
Si vous avez besoin de voir du code ... veuillez poster les tags de votre AndroidManifest.xml et le code de lancement d'activité de votre service. –