2010-08-21 6 views

Répondre

29

Peut-être cela répondra à votre question:

A commencé le service peut utiliser l'API startForeground pour mettre le service dans un état de premier plan, où le système considère comme quelque chose l'utilisateur est activement au courant de et donc pas un candidat pour tuer lorsqu'il est faible en mémoire. Par défaut, les services sont en arrière-plan, ce qui signifie que si le système doit les tuer pour récupérer plus de mémoire (comme afficher une grande page dans un navigateur Web), ils peuvent être tués sans trop beaucoup de mal.

Plus d'informations peuvent être trouvées here

+0

Comment pouvez-vous savoir si votre service a réellement démarré en tant que service de premier plan? Y a-t-il des traces dans logcat? – Alex

+1

Le fait que le service soit en avant-plan ou en arrière-plan dépend de deux facteurs: l'état du service et la façon dont vous l'avez démarré. http://developer.android.com/reference/android/app/Service.html#ProcessLifecycle –

14

avant sol: - Le processus repose sur OnPause() et onResume() ... à savoir que vous jouez lecteur de musique et en appuyant sur pause et la lecture

background: - Le processus qui s'exécute sans interaction de l'utilisateur ie réception de message, appel entrant, réception de mails, réglage d'alarmes..la méthode utilisée ici est onStart() et onStop() par exemple: - vérifier sur votre téléphone .. créer une alarme à 6h30 am .. quand l'horloge du système r chacun le 6:30 il incendies..inorder pour tuer le service d'alarme ... juste aller - menu -> paramètres -> application -> service courant--. service d'arrêt de clic ... il arrête le service d'alarme même votre système atteint le moment où il ne se déclenchera pas

Questions connexes