Gelöschter Account
- Forum-Beiträge: 3
07.08.2010, 01:21:24 via Website
07.08.2010 01:21:24 via Website
Hallo,
Ich beschäftige mit dem Lebenszyklus von Activities. Die Callbackmethoden onCreate(), on Start(), onResume(), onPause(),..., onDestroy() bieten einem ja die Möglichkeit auf Zustandsänderungen einer Activity zu reagieren, in dem man sie in seiner Activity überschreibt. Nun werden sie, so weit ich das verstanden habe, vom UI-Thread der Applikation (auch main Thread genannt) in der die Activity läuft aufgerufen. Oder?
(Hier: http://developer.android.com/guide/topic…html#procthread wird dazu folgendes gesagt: "All components are instantiated in the main thread of the specified process, and system calls to the component are dispatched from that thread. Separate threads are not created for each instance. Consequently, methods that respond to those calls — methods like View.onKeyDown() that report user actions and the lifecycle notifications discussed later in the Component Lifecycles section — always run in the main thread of the process.")
Aber wer sagt dem UI-Thread, wann er diese Methoden aufrufen soll? Oder verwaltet er das alles alleine? Das OS muss doch die Events, die der Benutzer verursacht oder die im Sytem auftreten und die einen Zustandswechsel meiner Activity zur Folge haben, abfangen und in irgendeiner Form an den UI-Thread übermitteln. Zum Beispiel führt ein drücken des Home-Buttons während die Activity sich im Zustand running/aktive befindet dazu, dass zunächst onPause() und dann onStop() aufgerufen werden. Gibt es dann so etwas wie eine Message oder ein Runable Object, dass in die Message Queue des UI-Threads gelegt wird? Oder wie sieht der Benachrichtigungsmechanimus aus?
Kann mir jemand erklären, wie das abläuft?
Danke für eure Hilfe
Ich beschäftige mit dem Lebenszyklus von Activities. Die Callbackmethoden onCreate(), on Start(), onResume(), onPause(),..., onDestroy() bieten einem ja die Möglichkeit auf Zustandsänderungen einer Activity zu reagieren, in dem man sie in seiner Activity überschreibt. Nun werden sie, so weit ich das verstanden habe, vom UI-Thread der Applikation (auch main Thread genannt) in der die Activity läuft aufgerufen. Oder?
(Hier: http://developer.android.com/guide/topic…html#procthread wird dazu folgendes gesagt: "All components are instantiated in the main thread of the specified process, and system calls to the component are dispatched from that thread. Separate threads are not created for each instance. Consequently, methods that respond to those calls — methods like View.onKeyDown() that report user actions and the lifecycle notifications discussed later in the Component Lifecycles section — always run in the main thread of the process.")
Aber wer sagt dem UI-Thread, wann er diese Methoden aufrufen soll? Oder verwaltet er das alles alleine? Das OS muss doch die Events, die der Benutzer verursacht oder die im Sytem auftreten und die einen Zustandswechsel meiner Activity zur Folge haben, abfangen und in irgendeiner Form an den UI-Thread übermitteln. Zum Beispiel führt ein drücken des Home-Buttons während die Activity sich im Zustand running/aktive befindet dazu, dass zunächst onPause() und dann onStop() aufgerufen werden. Gibt es dann so etwas wie eine Message oder ein Runable Object, dass in die Message Queue des UI-Threads gelegt wird? Oder wie sieht der Benachrichtigungsmechanimus aus?
Kann mir jemand erklären, wie das abläuft?
Danke für eure Hilfe
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.