Léczfalvy Ádám MIDlet-ek
MIDletek ◦ Életciklus ◦ Állapotok ◦ MIDlet osztály felépítése
A MIDP alkalmazásokat MIDleteknek nevezzük javax.microedition.midlet.* csomag tartalmazza a MIDlet osztályt, amelyből származtathatjuk saját MIDlet osztályunkat A MIDlet osztály keretrendszert biztosít: ◦ Az Application Manager eléréséhez: A MIDlet állapotváltozását jelezni lehet az AM felé, illetve az AM jelezni tudja a MIDlet állapotváltozásait ◦ Az alkalmazás leíró (application descriptor) adatainak eléréséhez
Loaded/Paused ◦ A MIDlet betöltésre kerül és lefut az osztály konstruktora Active ◦ A MIDlet fut Paused ◦ A MIDlet ideiglenes állapota, ahonnan folytathatja a futást, vagy leállításra kerülhet ◦ Biztosítani kell az erőforrások elérhetőségét más alkalmazások számára (release) ◦ Az animációkat és más erőforrás igényes tevékenységeket le kell állítani Destroyed ◦ A MIDlet futása befejeződik
protected abstract void startApp() ◦ AM jelez a MIDletnek, hogy az Active állapotba került protected abstract void pauseApp() ◦ AM jelez a MIDletnek, hogy a Paused állapotba került protected abstract void destroyApp(boolean unconditional) ◦ AM jelez a MIDletnek, hogy le kell állnia és belépnie a Destroyed állapotba ◦ Unconditional: False: a MIDlet megtagadhatja a leállítást, MIDletStateChangedException-t dob True: feltétel nélküli leállás
public final void notifyDestroyed() ◦ A MIDletjelzi az AM-nek, hogy Destroyed állapotba került (nincs DestroyApp hívás) public final void notifyPaused() ◦ A MIDlet jelzi az AM-nek, hogy Paused állapotba került (startApp, destroyApp valamelyike követi) public final void resumeRequest() ◦ A MIDlet jelzi az AM-nek, hogy szeretne az Active állapotba kerülni ◦ több alkalmazás futtatása esetén az AM ezt figyelembe veszi, és ha ezt a MIDlet-et választja, meghívásra kerül a startApp metódus
String getAppProperty(String key) ◦ A MIDlet csomag (JAR, JAD) jellemzőit lehet megtudni Boolean platformRequest(String URL) ◦ RFC 2806, ”tel: ” Int checkPermission(String permission) ◦ 0: denied, 1: allowed, -1: unknown