Device Programming MIDP

A koncepció API MIDP és J2ME épület egy cross-platform vezeték nélküli alkalmazások.

A gyártók a kompatibilis eszközök MIDP alkalmazások kifejlesztése, amely képes futtatni a különböző vezeték nélküli platformok, és a befejezése a platform és a minimális. Ebben a cikkben, amely az első három részes sorozat, akkor vizsgálja meg a fogalmát API MIDP és J2ME platformon. Bemutatásra kerül API létrehozásához használt grafikus, sablonok tárolt kód, amelyet használnak kapcsolat külső források. (3500 szó)

Vezeték nélküli iparág sztrájk szemtanúi sebesség technológiai fejlesztés. Mivel a nagy sebességgel új termék elavultak lehetnek néhány hónapon belül. Az eredmény a dinamikus fejlődés hiánya szabványosítása munkaállványok vezeték nélküli környezetben. Fejlesztési csapat szembesülnek azzal az igénnyel, hogy elsajátítsák több jelölőnyelvet és folyamatok a termék kompatibilis különböző eszközöket. marketing osztály folyamatosan kell változtatni a haladási iránya a változó piacon.

Kompatibilis eszközök, a mobil információ készülék profil (MIDP) lehetővé teszi a gyártóknak, hogy dolgozzon alkalmazások futnak több platformon különösebb erőfeszítés nélkül beállításáról és feldolgozás minden platformra. Ez viszont lehetővé teszi a fejlesztők, hogy összpontosítson a funkcionalitás a rendszer.

Bevezetés a J2ME

J2ME platformon alapul a Java programozási nyelvet, annak érdekében, hogy a maximális funkcionalitás a készülékek korlátozott. Ez egy alapvető funkciókat és számos speciális osztályok.

Ez a cikk összpontosít a figyelmet a CLDC (készülék konfigurációs kapcsolatot korlátozásokkal) és MIDP osztályok. Az ilyen osztály beállítja az úgynevezett profil szempontjából J2ME. Profil biztosítja az erős memória eszközök korlátozza a processzor sebességét, az akkumulátor kapacitását és a sávszélességet.

Bevezetés az API CLDC

Bevezetés a MIDP profilt

Egy rövid példa

Itt egy egyszerű példa a nyomtatási HelloWorld, amely áttekintést nyújt a ciklus MIDlet fejlődését. MIDlet nevét kapta kódok a mobileszközökön. Ez hasonlít egy kisalkalmazás, amely tartalmazza a felhasználói felület, adat és vezérlési lehetőségeket.

Az 1. ábra egy példányát a képernyő emulátor DefaultGrayPhone meghatározott J2ME a Windows, ami azt mutatja az eredmény a midletet.

Device Programming MIDP

1. ábra Az eredmény a MIDlet HelloMidlet

Hogy támogassa a MIDlet osztály importált speciális osztályokban, CommandAction felület, és a grafikus felhasználói felület (UI) osztályok felhasználó. Ezek az osztályok rendelkezésre API MIDP alábbi összetételű módosított a Java programozási nyelv osztályok. Később ebben a cikkben fogjuk megvitatni részletesebben az osztályok az API-tól MIDP.

Ez a vonal kijelenti, hogy HelloMidlet osztály kiterjeszti a MIDlet osztály és végrehajtja CommandListener felület. Minden MIDlet ki kell terjednie az absztrakt osztály a MIDlet, és rájön, van három módszer az alábbiakban leírt, amelyek lehetővé teszik, hogy véglegesítse a MIDlet.

Nyílt csatlakoztatása, ami megmondja a hosszát, típusát és kódolási információ. Ez az interfész húzódik StreamConnection felületen.

Nyisson meg egy kapcsolatot kommunikálni HTTP-n a fejlécek és külön HTTP ige. Ez az interfész húzódik ContentConnection.

Csatlakozó nyitott () módszer a következő alapvető formák:

javax.microedition.ui könyvtár

javax.microedition.ui könyvtár osztályokat tartalmazza, hogy lehet használni a fejlesztés a felhasználói felület a MIDlet. API létrehozására összpontosít az egyik kétféle design.

Képernyő tárgy és alosztályok tartoznak, amelyek megbeszéljük később HelloMidlet például létrehozásához használt felületek formájában formákat. A második részben nézzük meg annak lehetőségét, hogy ezeket a kapcsolódási pontokat, ráadásul ők is tanulmányozható útján dokumentáció Javadoc.

javax.microedition.rms könyvtár

javax.microedition.rms könyvtár osztályokat tartalmazza a végrehajtásához szükséges adatok az átmeneti tároló eszköz. Ez a fajta adatbázis lehetőségei korlátozottak magukhoz adatokat korlátai miatt az eszközök méretben.

Adatbázis API lesz szó a második része ennek a sorozatnak.

javax.microedition.midlet könyvtár

javax.microedition.midlet könyvtár tartalmazza a MIDlet osztályt. A MIDlet osztály ellátja a MIDlet ciklus és getAppProperty módszer (kulcs) információinak eléréséhez a tulajdonságokat a program meghatározott jad fájlt.

Az első lépések

Miután megszerezte a korábbi példában leckét, és érthető MIDP állványok készítmény, nézzük a telepítési folyamat MIDP környezetben. Mi tovább vizsgálja a folyamat az épület és a futás a MIDlet osztályt.

telepítés

Sun bemutatta új eszközkészletet sluzhashy könnyítése fejlődésének MIDlet. 2 mikroredaktsiya Wireless Toolkit Java (lásd. J2MEWTK) mindent meg kell, hogy dolgozzon ki egy MIDlet.

Ma már lehetőség van megnevezni két korlátozás a telepítőcsomag. Először is, csak akkor fut a Windows. Lehet, hogy hamarosan Sun bemutatta változat Solaris és Linux. Másodszor, a neve a telepítési könyvtár nem tartalmazhat szóközt, amely előírja, hogy a belső fordítási folyamat.

A letöltés után az eszköztár, akkor csak kattints rá az egérrel egy párszor, és akkor indul a munka. A telepítés megkezdése előtt útvonal kérik helyezi a program fájlokat. J2MEWTK integrálható Forte fejlesztő környezet, ami szintén mellékelve V szükséges telepíteni Forte Rasschirennaya eszköztár kiválasztásához telepítésekor egyedi konfigurációt, hanem egy modell.

Az alábbi struktúra jön létre a megadott könyvtárban. Megjegyezzük, hogy mint már említettük, ha a könyvtár neve szóközöket tartalmaz, akkor az előszűrés folyamat nem fog megfelelően működni.

futó KToolbar

KToolbar futtatni a parancssorból, vagy a Start menü, ahol a helyi telepítés során jön létre. Zapuskalka úgynevezett Ktoolbar.bat.

Meg kell látni valami hasonló a kép a 2. ábrán.


Ábra. 2. KToolbar J2ME Wireless szerszámkészletek

Projekt létrehozása

A program elindítása után létrehozhat egy projekt fájl HelloMidlet, amelyet korábban tárgyalt. Ehhez kattintson az „Új projekt”. Ábra. 2. Az ábrán látható. 3. párbeszéd.


Ábra. 3. Párbeszéd az új projekt.

Ez arra késztette a projekt neve és az osztály nevét a párbeszédablak, amely főként a MIDlet, és hogy ennek megfelelően kerül közvetlenül a projekthez. A projekt tartalmazhat több MIDlet, így meg tudod változtatni a nevét, a MIDlet ha szükséges.

A mi példánkban adja HelloMidlet a projekt neve, valamint a területén osztályban. Az információk megadása után, nyomja meg a „Create Project”, az eredmény lesz a beviteli mezőbe beállításokat a projekt ábrán látható. 4.


Ábra. 4. A projekt beállítások HelloMidlet.

Létesítmények látható. 4 az alapértelmezett. Jelentés MIDlet-Jar-URL áll a projekt neve. Úgy tűnt, hogy az érték megváltoztatása nem szükséges.


Ábra. 5. Nem kötelező attribútumok a projekt HelloMidlet

Ábra. Az 5. ábra a képernyőn KToolbar, ahol beállíthatja a tulajdonság a projekt. MIDlet használhatja ezeket a tulajdonságokat az alkalmazás. Ezért javasoljuk, hogy állítsa meg a konstans értéket itt, és nem írja elő azokat a kódot.


Ábra. 6. MIDleteket projekt HelloMidlet

Ábra. A 6. ábra egy listát az összes MIDlet, amely része lett HelloMidlet projekt. J2ME toolkit for Windows lehetővé teszi, hogy módosítsa az indítás érdekében MIDlet az emulátort a jar fájlt. A mi esetünkben csak egy MIDlet - MIDlet-1.

Fordítsd MIDlet

J2MEWTK egy beépített segédprogram, amely elvégzi a projekt összeállítása folyamatban. A fordításhoz akkor kattintson a „Build” gombot, amely látható ábra. 2. Ez az eszközkészlet összeállítása folyamat automatizált, de mások ezt nem történhet meg. Ezért azt a folyamatot lépéseket:

  1. összeállításának könyvtárat létre osztályokat és tmpclasses
  2. találatok kompiliyatsii Java forráskód kerülnek a könyvtárban tmpclasses
  3. class fájlok előre tesztelt és a könyvtárba bemásolja osztályok
  4. szkennelt fájlokat adunk a tégelybe
  5. jar adunk a forrás fájlokat
  6. generált emlékeztető frissítési fájl mérete jar és jad

Ennek eredményeként a munka a jar tartalmazza az összes bizonyított class fájlok, amelyeket köteles rögzíteni a program a készülék és a projekt egy jad fájlt.

jad fájl tartalmazza teljes körű tájékoztatást a MIDlet a nevét és értékét annak tulajdonságait. jad fájl HelloMidlet osztály a példánkban a következő:

Itt többek között felsorolt ​​területeken MIDlet neve, URL, méret, verzió. A legérdekesebb vonal MIDlet-1. Ez a fájl jad számolt csak egy MIDlet, így ezt a sort egyedül. Ha van dolgunk n midletet, mi lett volna, n sorokat:

Minden sor tartalmazza a nevét, a MIDlet így egy képfájlt a MIDlet és MIDlet osztály nevét.

Miért előszűrés?

Mint már korábban említettük, az osztály fájlok előszűrés szakaszban. Ez a folyamat biztosítja, hogy a class fájlokat nem hajtja végre a rossz működés, a korábban megadott. Emellett hasznos, hogy tegyen intézkedéseket, hogy optimalizálja a nagyobb teljesítményű gép, mint hagyni őket a virtuális gépek osztoznak a készüléket.

KVM, munkamemória 1 K, az optimális folyamatok ilyen eszközök, de nem az alapvető műveleteket, hogy lehet utstranit segítségével előzetes vizsgálatok.

Végrehajtja a MIDlet

Végrehajtás MIDlet is vezérelhető J2MEWTK. Ábra. A 2. ábra egy rés KToolbar kattintson a „Run”. Ez a gomb akkor elérhető, ha a projekt betöltésekor. meg kell futtatni a MIDlet válassza ki az eszközt, amelyre kipróbálni az alábbi listából:

Kiválasztása után a készülék akkor kattintson a Futtatás gombra, és futtassa az emulátort. MIDlet lehet futtatni a parancssori:

A parancs szintaxisa fejezetben leírt módon 5.5.2.1 V elosztó kézikönyv

Példa grafikus környezet

Az alábbi példa bemutatja, hogy egy egyszerű grafikus környezetet, amely segíthet, hogy elsajátítsák a fejlődés a grafikus kódok MIDP környezetben.

Egy egyszerű példa egy rajzot a következő osztályokba:

  • GraphicalMidlet: MIDlet osztály, amely kölcsönhatás a készülék
  • GraphicalCanvas: rajz terület grafikus objektumok
  • GraphicalObject: grafikus objektum, amely megvalósítja az interfészt futtatható
  • MovingTextObject: mozgó szöveges objektum
  • VerticalScrollingTextObject: kiterjesztése egy szöveges objektum

Példa GraphicalMidlet osztály kiterjeszti a MIDlet osztály és örökli annak viselkedési mintákat. Ez az osztály felelős továbbá a végrehajtására CommandAction interface Kilépés parancs feldolgozása, amikor a felhasználó dolgozik a kérelmet.

GraphicalMidlet osztály konstruktor működik statikus objektum megjelenítése. Constructor létrehoz egy példányt az osztály GraphicalCanvas, amelyre teljesít CommandListener.

A szerkesztő létrehoz egy új GraphicalCanvas VerticalScrollingTextObject, amely továbbítja az üzenetet a rajz területén. Ebben az egyszerű környezetben nem kerül feldolgozásra több információt a sebesség, helyét és színét a szöveges üzenetet. Az ezek megvalósítását a funkciókat az olvasónak a testmozgás.

Az alkalmazás használata használ GraphicalCanvas festékes módszer, hogy dolgozza át a képernyő alkalmazás. Ebben az esetben a rajz terület törli az összes korábbi rajzok, és ad GraphicalObject levonni függetlenül.

start () okozza a GraphicalMidlet start () metódus, hogy tájékoztassa GraphicalCanvas munkába. Ebben a példában a vászonra készít egy új programot tartalmazó áramot futtatható GraphicalObject. Ezután vászon osztály indul egy új téma, hogy azt végre feldolgozás előtt a módszer hívás és kezdeményezi átfestés alakja a rajz területén.

Azt is építeni ezt a példát, hogy több mint egy grafikus objektumot. GraphicalObject a rajzfelületen, és futtatni őket egyszerre.

Class GraphicalObject engedje futtatható felületet, és lehet futtatni a hullámok osztály GraphicalCanvas módszer start (). Szál, amíg befejeződik a stopThread módszer.

GraphicalObject nem tudja, mikor létre, hogy dolgozzon, vagy tárgyakat mozgatni a talpára, de ez határozza meg a két módszer, hogy kell bírálni. Ezek a következő módszerek:

Elsőbbség ezeket a technikákat megvalósíthatjuk MovingTextObject kívánt mozgását a tárgy, valamint eljárás a rajz. Így a megvalósítása egy másik tárgy, például forgó fogaskerekek, már csak változtatni a festék és mozogni.

A módszer a lépés () hivatkozott getX () és getY () a X és Y helyzetekben egy mozgó tárgy. Ez úgy történik, hogy bizonyítsa a potenciális a közeg kiterjesztéseket. Ebben az esetben a meghosszabbítás meglehetősen egyszerű, getX () metódus visszaad egy állandó érték, getY () metódus növeli az elhelyezkedés Y, amíg a kijelző alsó részén eléréséig.

Létrehozása különböző implementációk MovingTextObject, akkor végre a különböző közlekedési szokások. Például, RandomMovingTextObject osztály végrehajtja a véletlen értékek az X és Y pozíció, és vissza őket a módszerek és getX getY.

Továbbá ebben a sorozatban

Az első cikk, magamra a feladat, hogy mutassam be a koncepció a MIDP, annak bizonyítására, az alkalmazás-életciklus példaként egy egyszerű kódot, és használni, mint egy grafikus ábrázolása egy példát, hasonlóan az egyszerű kisalkalmazások, ami sokaknak van egy időben kiszabható.

A 2. részben megbeszéljük a tároló rendszerek, amelyek hozzáférhetők a vezeték nélküli eszközök MIDP. A példa egy form-alapú, elemezzük az API, amely lehet használni, hogy hozzon létre egy vezeték nélküli tárol.

A 3. rész, tartjuk a kapcsolatot API vezeték nélküli eszközöket a külső adatforrások, mint az URL. Ezen kívül jelentős példája az alkalmazás illusztrálják egyes fogalmakra, amelyek élnek a hatékonyabb MIDP.

következtetés

Megvalósítása a Java kódot a vezeték nélküli eszközök a következő logikus lépés a fejlesztés a platform. MIDlet képesek a forradalmi átalakulás platform, amely lehetővé teszi a fejlesztők számára, hogy a mobil felhasználók több funkciót könnyen használható megoldás. Ötvöztük fő programozó javítani halászat, például a meghatározása a helyét, és a platform volt podhodyashey azonnali megvalósítását.

A fejlesztések ezen a területen nagyon kellemes, mert lehetővé teszik a vezeték nélküli világ a fejlesztők számára, hogy új dolgokat tanulni API-n keresztül Java. A platform adja a „Írj egyszer, futtasd bárhol” új érték, belül is a Java.

Michael Cymerman a kutatási és fejlesztési igazgatója GroupServe, a Washington DC-alapú távközlési cég, amely létrehozza az internetes alkalmazások elősegítése csoportos kommunikáció.


Figyelmeztetés. mysql_connect () [function.mysql-csatlakozáshoz]: Nem lehet csatlakozni a helyi MySQL szerver segítségével socket '/tmp/mysql.sock' (2) A /pub/home/javaport/javaportal/books/show2b.php 11 vonalon

Figyelmeztetés. mysql_db_query () [function.mysql-db-query]: Nem lehet csatlakozni a helyi MySQL szerver segítségével socket '/tmp/mysql.sock' (2) A /pub/home/javaport/javaportal/books/show2b.php on 19. sor

Figyelmeztetés. mysql_db_query () [function.mysql-db-lekérdezés]: Egy link a szerver nem volt megállapítható a /pub/home/javaport/javaportal/books/show2b.php on line 19

Figyelmeztetés. mysql_fetch_array (): mellékelt érv nem érvényes MySQL eredmény az /pub/home/javaport/javaportal/books/show2b.php on line 30
Tudja meg, amit valójában gondol most itt.


[Hiba történt a feldolgozás ezen irányelv]


Figyelmeztetés. mysql_connect () [function.mysql-csatlakozáshoz]: Nem lehet csatlakozni a helyi MySQL szerver segítségével socket '/tmp/mysql.sock' (2) A /pub/home/javaport/javaportal/news/worldnews.php on line 91

Figyelmeztetés. mysql_db_query () [function.mysql-db-query]: Nem lehet csatlakozni a helyi MySQL szerver segítségével socket '/tmp/mysql.sock' (2) A /pub/home/javaport/javaportal/news/worldnews.php on vonal 93

Figyelmeztetés. mysql_db_query () [function.mysql-db-lekérdezés]: Egy link a szerver nem volt megállapítható a /pub/home/javaport/javaportal/news/worldnews.php on line 93

Figyelmeztetés. mysql_fetch_array (): mellékelt érv nem érvényes MySQL eredmény az /pub/home/javaport/javaportal/news/worldnews.php on line 95