0
votes

Comment démarrer une application avec Activity1 ou Activity2?

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.


5 commentaires

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


3 Réponses :


0
votes

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


0 commentaires

0
votes

De nombreuses façons de le faire. Permettez-moi de vous partager un exemple donné comme suit

  1. Créez une nouvelle activité (StartActivity) qui est votre activité racine.
  2. Dans cette activité, initialisez certains objets tels que (configuration d'application, fabric, notification push, partage des données de préférence, etc.)
  3. Ici, vous pouvez calculer vos données nécessaires et passer en utilisant le bundle
  4. 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.....*************************");
    }
    


0 commentaires

0
votes

Ajoutez votre calcul dans la méthode Application class onCreate () et ajoutez votre décision d'activité dans la classe Application.


1 commentaires

Non, c'est une mauvaise réponse. Android doit démarrer à partir d'une activité.