Bonjour,
J'avais déjà créé un topic pour ce problème, j'ai réussi à régler une partie du problème mais pas la totalité.
En gros j'ai une application comme ça :
Normalement on arrive dans Activity 1, après on va dans Activity 2, après dans Activity 3 et enfin Activity 4 et on peut reculer pour faire 4 -> 3 -> 2 -> 1.
Donc là il ni a aucun problème.
Après il faut voir que depuis chaque Activity on peut arriver dans Activity 4.
Pour régler ce problème j'ai mis ça dans le manifest :
Et quand dans Activity 4 je fais onBackPressed() je lance Activity 3 avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part android:launchMode="singleTop"
Ainsi de suite pour 3 -> 2 -> 1.
Code : Sélectionner tout - Visualiser dans une fenêtre à part intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
Le truc c'est qu'on peut arriver dans Activity 4 en étant pas dans l'application, parce que j'ai ça :
Et là c'est n'importe quoi, si je scan un tag ça fonctionne j'arrive bien dans Activity 4 et je fais bien 4 -> 3 -> 2 -> 1 et là ça se ferme.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <activity android:name=".ActivityBouteille" android:launchMode="singleTop" > <meta-data android:name="android.nfc.action.NDEF_DISCOVERED" android:resource="@xml/nfc_tech_filter" /> <intent-filter> <action android:name="android.nfc.action.TAG_DISCOVERED" /> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity>
Mais alors si depuis 3,2,1 ou n'importe quoi si je rescan un tag ça créer un truc en parallèle, je ne peux plus rien rescanner et quand je quitte il y a une autre application.
Je réexplique :
- Je ne suis pas dans l'application
- Je scan un tag
- J'arrive Dans Activity 4
- Je vais à Activity 3
- Je scan un tag
- J'arrive dans Activity 4
- Je fais 3 -> 2 -> 1 et je quitte
- L'Activity 3 est toujours lancé
J'ai créé une Activity comme ça :
http://developer.android.com/resourc...dDispatch.html
Et toutes mes Activity implements cette Activity.
Je ne sais pas si vous avez compris le truc, mais en gros, quand j'arrive dans l'application depuis l'intent filter et que je rescan un tag depuis une Activity autre que l'Activity 4 ça double l'application.
Si vous avez une solution, merci de m'en faire part.
Partager