MIDlet

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springenZur Suche springen

EinMIDlet ist eine Software für einMobiltelefon oder vergleichbares mobiles Gerät (Smartphone,Sensornetzknoten), welche in derProgrammierspracheJava geschrieben ist und demMobile Information Device Profile (MIDP) entspricht. MIDP ist wiederum ein Teil derJava Platform Micro Edition (Java ME) und eines der Profile derConnected Limited Device ConfigurationCLDC.

Mehrere MIDlets können zu einerMIDlet-Suite zusammengefasst werden, so dass sich die einzelnen MIDlets Ressourcen und Programmcode teilen können.

Viele der existierenden kostenpflichtigen Spiele fürMobiltelefone sind MIDlets aufEmbedded-Java-Basis. Die kostenlosen Anwendungen reichen von kleinenE-Book-Readern überKalender- oderTelnet-Clienten bis hin zu einemBASIC-Interpreter.

Struktur

[Bearbeiten |Quelltext bearbeiten]

MIDlets bestehen aus 2 Dateien: einer "Programmname".jad und einer "Programmname".jar -Datei. Die .jad-Datei enthält Informationen zur MIDP-Version, dem Hersteller und dem Ort, wo die Anwendung heruntergeladen werden kann. Die .jar-Datei ist das eigentliche ausführbare Programm und kann teils auch ohne die zugehörige .jad-Datei installiert oder weitergegeben werden.

MIDlet Lebenszyklus

[Bearbeiten |Quelltext bearbeiten]

MIDlets können sich, nachdem sie gestartet wurden, in mehreren Zuständen befinden und zwischen ihnen wechseln. Die JavaApplication Management Software (AMS) steuert den Lebenszyklus (engl. "life cycle") eines MIDlets. Dieser Programmmanager ist u. a. dafür verantwortlich, MIDlets zu initialisieren, zu starten, zu pausieren, wiederaufzunehmen und zu beenden. Demnach kann sich ein MIDlet in vier Zuständen befinden:Loaded,Paused,Active undDestroyed.

Lebenszyklus eines MIDlets

Nachdem ein MIDlet geladen wurde, beginnt es sein Leben im ZustandLoaded/Paused. DerProgrammmanager ruftstartApp() auf, und das MIDlet wechselt in den ZustandPaused.Es gibt drei weitere Möglichkeiten in den ZustandPaused zu gelangen. Erstens, wenn derProgrammmanager die MethodepauseApp() aufruft. Dies kann z. B. durch einen eingehendenTelefonanruf erfolgen. Zweitens, wenn das MIDlet durch Aufruf der MethodenotifyPaused() sich selbst pausiert. Drittens, wennstartApp() eineMIDletStateChangeException erzeugt. Der Programmmanager ruft diese Methode entweder nach der Initialisierung oder später auf, um wieder in den ZustandActive zu gelangen. Befindet sich ein MIDlet inPaused, sollten die laufenden Prozesse des MIDlets gestoppt werden, damit die Applikation im Vordergrund alle Ressourcen zur Verfügung gestellt bekommt, es zu keinen Ressourcekonflikten kommt und die Batterie nicht unnötig belastet wird. Aktive MIDlets (Active) führen die ihnen erteilten Aufgaben aus und beanspruchen dadurch Ressourcen für sich. Der ZustandDestroyed kann entweder vonPaused oderActive erreicht werden. Um das MIDlet zu beenden, ruft der ProgrammmanagerdestroyApp() mit demboolean-Argumentunconditional auf. In dieser Methode können letzte Befehle vor der endgültigen Terminierung durchgeführt werden, wie z. B. reservierten Speicher freigeben oder geöffnete Verbindungen schließen. Wenn der Programmmanager sich entschließt, das MIDlet zu beenden, dieses jedoch gerade wichtige Funktionen ausführt, kann das Setzen des Parametersunconditional auffalse eine erzwungene Terminierung verhindern. Eine Garantie dafür gibt es allerdings nicht. Wie darauf reagiert wird, ist abhängig vom Gerät. In der Regel wartet der Programmmanager einige Zeit und versucht dann, das MIDlet erneut zu beenden. Istunconditional gleichtrue, wird das MIDlet erzwungen beendet, ungeachtet der Bedeutung laufender Prozesse.

Weblinks

[Bearbeiten |Quelltext bearbeiten]
Abgerufen von „https://de.wikipedia.org/w/index.php?title=MIDlet&oldid=243408046
Kategorien: