310 likes | 491 Views
Next Generation Mobile Java. Mediatekniikan seminaari 4.4.2006 Tommi lehto. Johdanto. Ensimmäinen ulkopuolinen Next Generation Mobile Java -kokeilu Osittain Salassapitovelvollisuuden alaista tietoa Kehitysympäristö Carbide J Future Edition V. Alpha 2 Rajoituksia kirjastoissa
E N D
Next Generation Mobile Java Mediatekniikan seminaari 4.4.2006 Tommi lehto
Johdanto • Ensimmäinen ulkopuolinen Next Generation Mobile Java -kokeilu • Osittain Salassapitovelvollisuuden alaista tietoa • Kehitysympäristö Carbide J Future Edition V. Alpha 2 • Rajoituksia kirjastoissa • Puhelinten kehitysversiot tulossa
Sisältö • Java-teknologiat • Next Generation Mobile Java • Siirtymävaihe • Yhteenveto
Java-teknologiat • Java-sovellusalusta • J2SE, J2EE ja J2ME • J2SE - Standard Edition • Itsenäiset sovellukset ja Appletit • J2EE - Enterprise Edition • EJB:t, JavaBeanit, JSP ja Servletit • J2ME - Micro Edition • Java-ohjelmat ja MIDletit
J2ME • Konfiguraatiot • CDC (Connected Device Configuration) • CLDC (Connected Limited Device Configuration) • Profiilit (CDC) • Foundation Profile • Personal Basis Profile • Personal Profile • Profiilit (CLDC) • MIDP (Mobile Information Device Profile)
J2ME - CDC • JSR-218 (Java Specification Request) • Käyttökohteet • Digiboksit, GPS-laitteet, PDA:t ja kehittyneet matkapuhelimet • Tavoitteet • Mahdollisimman laaja J2SE-yhteensopivuus rajoittuneille verkkolaitteille • Tukee täyttä JVM-spesifikaatiota (Java Virtual Machine) • Laitteille, joissa 512 kB - 4 MB muistia • Viimeisin versio CDC 1.1
J2ME - CLDC • JSR-139 • Käyttökohteet • Matkapuhelimet ja rajoittuneet PDA:t • Suunniteltu matkapuhelimille • Laitteille, joissa 160 - 512 kB muistia • Viimeisin versio CLDC 1.1
J2ME - Foundation Profile • JSR-219 • Yksinkertaisin CDC-profiileista • Ohjelmiston perustan muodostavat komponentit • Ei tue graafisia komponentteja • Tarkoitettu verkkolaitteille ilman graafista käyttöliittymää
J2ME - Personal Basis Profile • JSR-217 • Komponentit kevyiden graafisten käyttöliittymien rakentamiseen • Rajoitettu AWT-tuki (Abstract Window Toolkit) • Sisältää Foundation Profilen
J2ME - Personal Profile • JSR-216 • Komponentit graafisten käyttöliittymien rakentamiseen • Täysi AWT-tuki • Tukee PersonalJava-teknologiaa (J2SE-ohjelmat mobiililaitteessa) • Sisältää Personal Basis Profiilin
J2ME - MIDP • Muodostaa yhdessä CLDC:n kanssa JRE:n mobiililaitteille (Java Runtime Environment) • Ohjelmiston perustan muodostavat komponentit • MIDP 1.0 (JSR-37) • MIDP 2.0 (JSR-118) • Laajennuksia • Kehittyneemmät käyttöliittymät ja parempi tuki multimedialle ja peleille mm. • MIDP 1.0 -yhteensopivuus
Next Generation Mobile Java • J2ME-kirjastojen standardointi eri valmistajien mobiililaitteiden yhteensopivuuden takaamiseksi • Mobile Service Architecture initiative (MSA) määrittelee yhteisiin avoimiin standardeihin perustuvan NGMJ:n kehityksen ja sovellusalustan kuluttajille ja yrityksille suunnatuille ohjelmistoille. • JSR 248, 249 ja 232 • Alullepanijoina Nokia ja Vodafone • Aloitetta tukee mm. • SUN, Motorola, Orange, T-Mobile, Siemens, Sony-Ericsson, Cingular, Sprint, NTT DoCoMo, Samsung, RIM, BEA
NGMJ - lähtökohdat • J2ME:n rajoitukset • Heikko yhteensopivuus eri valmistajien laitteiden kesken • Rajoitettu laajennettavuus • Sovellusten yhteistyörajoitukset • Ei etähallintaa • Monen laitteen hallinta keskitetysti • Palvelut (MSA)
NGMJ • 2 eri standardia • Matkapuhelimille (JSR-248) • Henkilökohtaisille mobiililaitteille (JSR-249)
NGMJ - OMA • Mobile Operational Management (JSR-232) • Tukee dynaamisia palveluita • Antaa mahdollisuuden ohjelmistolaajennuksiin • Antaa mahdollisuuden hallita suojatusti järjestelmää ja sen komponentteja paikallisesti tai etänä • Tarjoaa mahdollisuuden etähallintaan Symbian- ja Java-ympäristössä • Määrittelee ohjelmistokehityksen kannalta tärkeitä mekanismeja
NGMJ - S60 • eSWT-käyttöliittymä • Tarjoaa Java-ohjelmille käyttöjärjestelmälle ominaisia käyttöliittymäkomponentteja optimoituina • Mahdollistaa monipuolisemmat käyttöliittymät • Tuettu molemmissa NGMJ-spesifikaatioissa (JSR-248 ja -249) • Käyttää pääasiassa käyttöjärjestelmän natiivielementtejä, mutta omien elementtien kehitys Javalla myös mahdollista
NGMJ - hyödyt • Palvelu-suuntautunut modulaarinen arkkitehtuuri • Sovellusalustan laajennukset • Monipuoliset käyttöliittymät • Alustan vakaus ja toiminta vastaa alan tarpeisiin • Turvallinen (suojattu) sovellusympäristö • Sovellusten ja alustan etähallinta ja monitorointi • Eri valmistajien tuotteiden yhteensopivuus • Yhteensopivuus nykyisten CLDC/MIDP -soveluksiin
Siirtymävaihe • NGMJ tulee toimimaan Series 60 puhelimilla • 3 eri resoluutiota • 320 x 240, 352 x 416, 640 x 320 • Tällä hetkellä Series 60 2nd Edition • Parin viikon sisällä Series 60 3rd Edition • Askel kohti NGMJ:tä • 3 eri resoluutiota • 176 x 208, 240 x 320, 352 x 416 • Syksyllä ehkä Series 60 4th Edition • NDA:n alaista tietoa
Siirtymävaihe - S80 ja S90 • Taitettavat älypuhelimet toimivat omalla S80-alustallaan (Nokia 9500, 9300) • Resoluutio 640 x 200 • Nokia 7710 (Mobiili-tv) toimii omalla S90-alustallaan • Resoluutio 640 x 320 • Vuoden 2006 aikana siirtyy S60-alustalle • Siirtyykö S80 myös?
Siirtymävaihe - S80 • Series 80 ei tule tukemaan NGMJ-teknologiaa, mutta Series 80 tukee jo CDC-profiileja • Nokia 9500, 9300 ja 6300i mahdollistavat CDC- ja Personal Profile -pohjaisten Java-sovellusten käytön. • Mahdollisuus tehdä natiivisovelluksia Javalla käyttäen Java Native Interfacea (JNI) • Ohjelman natiivikomponentit ohjelmoidaan käyttäen C++ ja käännetään ohjelma natiivikirjastoon. • JNI mahdollistaa C++ -komponenttien käytön Java-sovelluksissa
Siirtymävaihe - S60 • S60 2. Ja 3. version välillä on yhteensopivuuskatkos • S60 tehdyt muutokset ovat osa NGMJ-spesifikaatiota, joten yhteensopivuusongelmia ei lähitulevaisuudessa tule vastaan.
Siirtymävaihe - S60 • S60 3. Versioon lisättyjä Java-kirjastoja • Location API - paikkatietojen käsittelyyn • SIP API - messenger- ja pelipalvelut • Security & Trust Services API - lisäsuojaus palveluille • Scalable Vector Graphics API - SVG-tuki • Web Services API - XML-tuki • PIM API - (Personal Information) pääsy esim. kalenteritietoihin • File Connection API - päästää ohjelmat käsiksi tiedostoihin • Mobile 3D Graphics API - OpenGL 3D -grafiikkaa mobiililaitteille • Muita kirjastoja päivitetty
Siirtymävaihe - puhelimet • Carbide J FE:n NGMJ-emulaattori resoluutiolle 352 x 416 muistuttaa n. 2 viikon kuluttua myyntiin tulevaa Nokia E70-puhelinta, joka toimii S60 3rd Edition -alustalla.
Siirtymävaihe - puhelimet • Carbide J FE:n NGMJ-emulaattori resoluutiolle 320 x 240 muistuttaa kaukaisesti Nokian uutta E61-puhelinta. • Näytön resoluutio ja sivusuhde on sama kummassakin puhelimessa
Siirtymävaihe - puhelimet Viimeisen emulaattorin näyttöresoluutio on yhtenevä Nokian 7710 kanssa, 640 x 320, mutta siinä on täysi näppäimistö.
Yhteenveto • Series 60:sta kehitetään seuraavan sukupolven mobiilialustaa. • NGMJ-sovellukset ovat lähes natiivisovelluksia. • NGMJ-mahdollistaa laajan yhteensopivuuden eri valmistajien välille. • Uudet J2ME-laajennukset tuovat mukanaan kasvavan tietoturvariskin ja samalla yksityisyyden suoja heikkenee. • Sovellusten etähallinta tuo suuren hyödyn esim. yrityksille. • Järjestelmäpäivitykset ovat kauan odotettu toiminto • Sovellustarjonta paranee • Mobiililaitteet alkavat syödä kannettavien tietokoneiden suosiota perustarpeiden osalta.
Lisätietoja • http://java.sun.com/j2me • http://www.jcp.org • http://www.openmobilealliance.org/ • http://www.forum.nokia.com • www.s60.com