Existe-t-il une fonction dans Android analogue à «int main» en C / C ++ qui contient la boucle principale du programme?

StackOverflow https://stackoverflow.com/questions/1099640

Question

Normalement, dans un programme C ou C ++, il y a une boucle principale / fonction, généralement int main (). Existe-t-il une fonction similaire que je peux utiliser dans Android Java Development?

Était-ce utile?

La solution

En ce qui concerne un programme Android, il n'y a pas de main (). Il y a une boucle d'interface utilisateur que le système d'exploitation fait des appels aux méthodes que vous définissez ou remplacez dans votre programme. Ces méthodes sont probablement appelées / définies dans onCreate (), OnStart (), OnResume (), OnRestart (), ONPause (), Onstop () ou OnDestroy (). Toutes ces méthodes peuvent être remplacées dans votre programme.

La question fondamentale est que le système d'exploitation est conçu pour s'exécuter dans un environnement contraint de ressources. Votre programme doit être prêt pour être interrompu et même complètement arrêté chaque fois que le système d'exploitation a besoin de plus de mémoire (il s'agit d'un système d'exploitation multitâche). Afin de gérer que votre programme doit avoir certaines de toutes les fonctions énumérées ci-dessus.

Le cycle de vie de l'activité décrit ce meilleur (votre programme est une ou plusieurs activités, pensez à une activité comme un écran):

http://developer.android.com/reference/android/app/activity.html#activitylifecycle

Conclusion: votre programme «démarre» sur onCreate () via onResume () mais le système d'exploitation exécute la boucle. Votre programme fournit des rappels au système d'exploitation pour gérer tout ce que le système d'exploitation lui envoie. Si vous mettez une longue boucle à tout moment de votre programme, il semblera geler car le système d'exploitation (en particulier le thread d'interface utilisateur) n'est pas en mesure d'obtenir une tranche de temps. Utilisez un fil pour les longues boucles.

Autres conseils

Dans l'environnement Android, il n'y a pas de main (). Le système d'exploitation s'appuie sur le fichier manifeste pour découvrir le point d'entrée, une activité dans la plupart des cas, dans votre application.

Tu devrais lire http://developer.android.com/guide/topics/fundamentals.html pour plus de détails.

Selon:http://developer.android.com/guide/tutorials/hello-world.html

La classe d'application doit prendre en charge une méthode pour chaque activité prise en charge de l'application. Dans le cas général, l'onCreate est probablement équivalent à la fonction principale / supérieure pour vos besoins.

Peut-être que c'est possible en créant une minuterie et en exécutant des fonctions personnalisées à chaque tique, réinitialisez la minuterie quand elle est à un moment précis

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top