Java Wireless TARC Anca Rarau Noiembrie 2002. Cuprins 1. J2ME 2. MIDP 2.1. Introducere 2.2. Interfata utilizator 2.3. Stocare persistenta 2.4. Conectare.

Slides:



Advertisements
Similar presentations
Pengantar Teknologi Mobile 12
Advertisements

J2ME 25 July Overview  What is J2ME?  The CLDC and CDC configurations  MIDP and MIDlets  Development Tools  Demonstrations.
Programming Handheld and Mobile devices 1 Programming of Handheld and Mobile Devices Lecture 10 Java for MIDs Rob Pooley
Cojocea Manuela-Simona Microsoft Student Partners.
Cojocea Manuela-Simona Microsoft Student Partners.
În general exist ă 2 forme mari de conservare : “in situ” şi “ex situ” 1. Conservarea “ in situ” Aceast ă metod ă de conservare const ă în.
Developing an Application with J2ME Technology Scott Palmer, Nat Panchee, Judy Sullivan, Karen Thabet, Sten Westgard.
PDA Programming Using J2ME Presenter :涂俊凱 Date : 2003/4/8.
The 21th century Repairman Agenda Introduction J2EE J2ME Demonstration.
Java 2 Platform, Micro Edition (J2ME) By Xiaorong Wang.
Michael Brockway Advanced Applications Development in Java J2ME -- Introduction l Introduction / Overview l Java 2 Micro Edition n CLDC n MIDP l Examples.
Framework and application bytecode size CLDC MIDP kXML parser Utility classes Graphics Logic (MIDlet) Application Data (XML file)
Computer Science Wi-Fi App using J2ME and MVC Architecture Advisor : Dr. Chung-E Wang Department of Computer Science Sacramento State University Date:
J2ME Presented by May Sayed & Menna Hawash. Outline Introduction “Java Technology” Introduction “What is J2ME?” J2ME Architecture J2ME Core Concepts 
Java 2 Micro Edition (J2ME) and the world of java
1Basics of J2ME. 2 Objectives –Understand the different java API’s and how the mobile edition API’s fit in –Understand what a mobile configuration and.
Other Popular Java Technologies Internationalization in Java Graphics Programming in Java Security Programming in Java Collections and Data Structures.
(passive voice) -prezentare -
Java 2 Micro Edition The Connected, Limited Device Configuration.
Advance Computer Programming Market for Java ME The Java ME Platform – Java 2 Micro Edition (J2ME) combines a resource- constrained JVM and a set of Java.
POSTA ELECTRONICA Ana-Maria Tache Ioana Cristina Ciufu.
The Java Platform Micro Edition Java ME
Ionuţ Hrubaru: In Memory Databases Ionuţ Hrubaru: Iaşi,
Part II Software When developing software there are several particularities to be aware of: Java is widespread used because of the platform independence.
Programming of Handheld and Mobile Devices
Wireless Instant Messaging Using J2ME
Februarie 2018 ASE Bucuresti
Subinterogări multiple
CUPRINS Tastatura Imprimanta Scanner Bibliografie Recapitulare.
By Jeff Heaton An Overview of J2ME By Jeff Heaton
Funcţii Excel definite de utilizator (FDU) în VBA
Placa de bază.
Instrumente CASE Curs nr. 7.
Administrare Oracle 9i Suport de curs
SOFTWARE Tipuri de software.
PASII INSTALARII SISTEMULUI DE OPERARE
Windows Movie Maker.
Dispozitive de stocare
Arhitectura serviciilor web
Structura pipeline a unui procesor MIPS
Paxos Made Simple Autor: Puşcaş Radu George
Gestionarea datelor stiintifice
Retele de calculatoare
Reflexia luminii.
UNIVERSITATEA POLITEHNICA BUCUREȘTI FACULTATEA de ELECTRONICĂ, TELECOMUNICAȚII ȘI TEHNOLOGIA INFORMAȚIEI - Android OS - Coordonator știintific Stefan.
Software product management
CONVERSII INTRE SISTEME DE NUMERATIE
WebSite Social Tema 2 WebSite Social.
Tipuri structurate Tipul tablou
Web Form BuilDer Coffee Cup.
UPB ETTI IISC Web Interactiv Floroiu Andrei.
Funcții C/C++ continuare
prof. mrd. Negrilescu Nicolae Colegiul National Vlaicu Voda
Apache WEB Server.
Eclipsele de soare si de luna
Forms (Formulare).
A great way to create a channel of communication
SUBSTANTE PURE SI AMESTECURI DE SUBSTANTE
Administrarea reţelelor de calculatoare
Folosirea de către companii a Twitter, Facebook şi LinkedIn
Programarea in limbajul Java 2004 Lecturer: Gavrila Cristian
Realizarea prezentarilor cu Microsoft PowerPoint
Software open source in industria software
Crearea unei aplicatii Windows Forms simple
CMMI- Arii de proces: Inginerie si managementului proiectelor
Harti de imagini, Cadre, Stiluri
Despre lamaie.net De ce sunt lamaile acre? Realizatori: Cristina Cazan
Administrare Oracle 9i Suport de curs
Java for Mobile Devices
Presentation transcript:

Java Wireless TARC Anca Rarau Noiembrie 2002

Cuprins 1. J2ME 2. MIDP 2.1. Introducere 2.2. Interfata utilizator 2.3. Stocare persistenta 2.4. Conectare

J2ME J2ME = Java pentru dispozitive mici ( pager, telefon mobil, PDA, etc.) J2ME este divizat in configuratii si profile diversitate mare de dispozitive

J2ME In general configuratiile si profilurile sunt descrise in functie de capacitatea de memorie (ROM, RAM) Sunt administrate de JCP (Java Community Process)

Configuratie Este specifica unei clase de dispozitive (dispozitive care au aceleasi caracteristici de memorie si procesor) Specifica JVM si subsetul API din J2SE

Profil Este mai specific decat o configuratie, se adreseaza unei familii mai restranse de dispozitive Se bazeaza pe o configuratie, dar adauga API pentru interfata utilizator, stocare persistenta, etc

Configuratii si profile

Connected Device Configuration (CDC) Dispozitive cu minim 512KB ROM, 256KB RAM Dispozitive care suporta conexiuni la retea

Connected Device Configuration (CDC) Aceste dispozitive trebui sa suporte JVM asa cum este ea definita in Java Virtual Machine Specification editia a 2-a Exemple televison set-top boxes, car navigation system, high end PDA

Connected, Limited Device Configuration (CLDC) Dispozitivelor cu memorie cuprinsa intre 160KB si 512KB CLDC se adreseaza dispozitivelor mici cu conexiune la retea limitata, “Limited Connection Device Configuration” ar fi fost mai exacta

Connected, Limited Device Configuration (CLDC) Conexiune limitata = conexiune intermitenta si lenta (telefoanele mobile 9.6Kbps)

Connected, Limited Device Configuration (CLDC) KVM = JVM pentru CLDC Exista deosebiri importante intre JVM (din J2SE) si KVM. Un articol in care sunt prezentate aceste diferente este disponibil la nicalArticles/wireless/midpapi nicalArticles/wireless/midpapi

CDC si CLDC CLC si CLDC sunt specificatii nu un software KVM este un software

Profile J2ME NumeROMRAMConfiguratie Foundation1024KB512KBCDC Personal2.5MB1MBCDC+Found ationProfile RMI2.5MB1MBCDC+ Foundation Profile MIDP128KB32KBCLDC PDA~256KB CLDC

Foundation Profile Se adreseaza dispozitivelor care au legatura retea foarte buna Profilul nu suporta interfata utilizator, ca urmare alte profile trebuie sa fie suprapuse peste el, profile care adauga interfata utilizator si alte functionalitati.

Personal Profile CDC + Foundation Profile + Personal Profile vizeaza urmatoarea generatie de PersonalJava (

RMI Profile CDC + Foundation Profile + RMI vizeaza dispozitivele care vor suporta RMI si JINI.

PDA Profile Profilul PDA este conceput pentru dispozitive palmtop care au minim 512KB (ROM si RAM combinate) si un maxim de 16MB.

Mobile Information Device Profile (MIDP) 128KB de memorie non-volatila pentru implementarea MIDP 32KB memorie volatila pentru stiva la runtime 8KB memorie non-volatila pentru stocarea datelor perisistente ecran de 96x54 pixeli abilitati de input de tipul tastatura, touch screen conexiune la retea two-way, posibil intermitenta

Mobile Information Device Profile (MIDP) Dispozitive cu astfel de caracteristici sunt telefoane mobile, anumite pagere, anumite PDA-uri. API-ul disponibil unei aplicatii MIDP este format din pachetele din CLDC si MIDP

Pachetele MIDP

Componentele Software MID

Mobile Information Device Profile (MIDP) MIDP este primul profile J2ME care poate fi folosit deja pentru scrierea de aplicatii. O aplicatie scrisa folosind API-ul MIDP va fi portabila direct pe orice dispozitiv MIDP. MIDP este doar o specificatie, producatorii sunt liberi sa dezvolte propria lor implementare pe baza acestei specificatii.

MIDlet Applet = program care poate fi descarcat si rulat la comanda Servlet = program care ruleaza la partea de server, inlocuind practic CGI-urile MIDlet = aplicatie MIDP

java.lang in CLDC / MIDP CLDC nu suporta primitive de tipul double sau float CLD nu suporta wrapperele java.lang.Float si java.lang.Double

java.lang in CLDC / MIDP

Functiile din coloana MIDP au uneori semnatura diferita de cele din coloana J2SE Platformei java poate incarca clase la runtime CLDC / MIDP nu permite definirea de de classloader. Managerul de aplicatii care executa MIDletul are un classloader, dar acesta nu poate fi accesat sau folosit

java.lang in CLDC / MIDP Object finalization nu este disponibil API reflection nu este admis Metodele native nu sunt premise

java.lang in CLDC / MIDP Crearea unui thread, pornirea lui si utilizarea java.lang.Runnable se fac ca si in J2SE interrupt(), pause(), resume(), stop() (java.lang.Thread) nu sunt in CLDC. Grupurile de thread-uri, thread-urile daemon si thread naming de semenea nu sunt suportate in CLDC.

java.lang in CLDC / MIDP String este prezent in CLDC si este aproape identic cu cel din J2SE Din String s-au eliminate metodele statice valueOf() care faceau conversia intre primitive floating-point si String

java.lang in CLDC / MIDP Lipsesc si alte metode: ex. in CLDC exista compareTo(String), dar nu exista compareTo(Object) Aceeasi este abordarea si pentru StringBuffer Clasa Math nu contine metodele care lucreaza cu functii trigonometrice

java.lang in CLDC / MIDP

Runtime si System sunt mult reduse ex. pentru System nu exista in pentru ca nu exista consola, out este folosit de asemenea numai pentru simulatoare pentru obtinerea rezultatelor in fereastra consola

java.lang in CLDC / MIDP

java.io in CLDC / MIDP Trei grupe de diferente: 1. CLDC / MIDP nu are conceptul de sistem local de fisiere, toate clasele care aveau legatura cu fisierele au fost eliminate (File, FileInputStream, FileOutputStream, clasele wrapper corespunzatoare Reader si Writer, RandomAccesFille, etc); pentru inmagazinare persistenta de date pe dispozitiv trebuie folosit API din pachetul javax.microedition.rms.

java.io in CLDC / MIDP 2. Serializarea obiectelor nu este suportata in CLDC interfata Serializable si alte object stream classes nu sunt prezente. 3. J2SE include o multime de utility classes, piped stream, pushback streams, sequence streams, line numbering streams, StreamTokenizer etc.

java.io in CLDC / MIDP

java.util in CLDC / MIDP Lipsesc clasele collection, dar se pot folosi Vector, Hashtable, Stack

java.util in CLDC / MIDP

MIDP contine clasele Timer si TimerTask. Acestea sunt dintre putinele exemple care sunt nu continute in CLDC, dar sunt continute in MIDP.

Procesul de dezvoltare MIDlet 1. cicluri compile-and-run 2. deployment pe un dispozitiv propriu-zis sau pe un emulator

Procesul de dezvoltare MIDlet Sun: “MIDP reference implementation” (documentatie,tool, emulator Windows pentru telefon mobil); este free. Sun: J2MW Wireless Toolkit (reference implementation, GUI tool); este free Motorola: kit de dezvoltare MIDP; este free. Reasearch In Motion Zucotto Wireless

Procesul de dezvoltare MIDlet 1. scriere program 2. compilare cod sursa - compilatorul trebuie informat ca se doreste utilizarea versiunii MIDP a unei clase si nu versiunea J2SE: optiunea in linia de comanda –bootclasspath 3. preveryfing 4. rularea MIDP pe un simulator