Je ne sais pas comment mettre en œuvre cette situation.
J'ai une application, au démarrage de l'application, je dois calculer quelque chose puis, en fonction des résultats, démarrer ou Activity1 ou Activity2.
Comment puis-je atteindre cet objectif?
Si je mets les calculs dans Activity1, et que les calculs veulent démarrer Activity2, cependant Activity1 démarre Activity2 puis soudainement finish ()
, mais l'écran scintille car il y a une activité qui commence et se termine dans quelques msecs. Ce n'est pas très intelligent.
3 Réponses :
vous devez utiliser une activité de démarrage, y placer vos calculs, puis, en fonction du résultat, démarrer l ' activité que vous souhaitez
De nombreuses façons de le faire. Permettez-moi de vous partager un exemple donné comme suit
Créer un objet d'intention pour la traduction en Activity1.class
if(BuildConfig.DEV_ENV && CounterPreference.getInstance().isFirstStart()) { Intent intent = new Intent(this, Activity1.class); startActivityForResult(intent, DEBUG_OPTIONS_ACTIVITY); } else { StartupManager.getInstance().start(StartActivity.this); Logger.d(TAG, "Application Started.....*************************"); }
Ajoutez votre calcul dans la méthode Application class onCreate () et ajoutez votre décision d'activité dans la classe Application.
Non, c'est une mauvaise réponse. Android doit démarrer à partir d'une activité.
Pourquoi ne pas avoir l'activité 3, qui est un écran de démarrage, et faire le travail là-bas. C'est assez intelligent; O), si votre application prend un certain temps à se charger / décider quoi faire. N'oubliez pas également que vous devez décider quoi faire si l'application est en pause (retour à l'écran de démarrage?).
Jon Goodwin réponds s'il te plait
Ce lien aidera à mettre en œuvre un écran de démarrage de la bonne manière. bignerdranch.com/blog/splash-screens-the-right-way
Le guide (complet) de l'écran de démarrage Android
vous devez avoir l'activité 3