Faire une activité apparaître qu'une seule fois, lorsque l'application est démarrée
J'ai la classe suivante, SplashActivity.java:
public class SplashScreen extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
//TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
Thread timer = new Thread(){
public void run(){
try{
sleep(5000);
}catch(InterruptedException e)
{
e.printStackTrace();
}
finally{
Intent tutorial = new Intent(SplashScreen.this, TutorialOne.class);
startActivity(tutorial);
}
}
};
timer.start();
}
}
Je veux cette activité à charger qu'une seule fois, lorsque l'application est installée sur le périphérique mobile pour la première fois. Étant nouvelle pour android, j'ai très peu d'idée à ce sujet. J'ai lu dans des lieux que le SharedPreferences
doit être utilisé, mais ne comprennent pas la mise en œuvre. Et la chose à propos de cette activité est que, l'activité doit agir comme un Launcher
lorsqu'il est utilisé pour la première fois, c'est vraiment ce qui me confond. Parce que dans le fichier manifest je déclare une autre activité, dans mon cas, serait le MainPage.java
. Alors, comment puis-je mettre en œuvre cette logique ?? Dois-je faire appel à la SplashActivity
dans le MainPage
ou est-il autre chose qui doit être fait ?? S'il vous plaît aider quelqu'un ?
Quelqu'un peut s'il vous plaît écrivez le code pour mettre en œuvre cette logique, si possible?
- Je veux que d'une chose ... comme si l'application est installée sur un dispositif mobile pour la première fois seulement alors que l'écran de démarrage de l'émission.
Vous devez vous connecter pour publier un commentaire.
Ajouter ce code à votre méthode onCreate
SharedPreferences sera de garder chaque fois que vous exécutez l'application, à moins que vous nettoyer les données à partir des Paramètres de votre Android.
Le premier temps est d'aller d'obtenir la valeur d'un booléen (activity_executed) enregistrés sur ces préférences (ActivityPREF).
Si il ne trouve pas de valeur qu'elle retourne false, et donc nous devons modifier les préférences et définissez la valeur sur true.
La prochaine exécution de lancement de l'activité
TutorialOne
.finish()
efface l'activité actuelle de la pile de l'histoire, donc pas de revenir est possible à l'aide du bouton de retour de TutorialOne.Sur votre manifeste, vous pouvez définir cette actitiy avec
Chaque fois que l'application est exécutée de lancer cette activité, mais en raison de la véritable sertie sur le
"activity_executed"
va démarrer une nouvelle activité avecstartActivity
.Je pense que ça devrait être comme ça.