SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Introduction
         of
       J2ME !

Guided By :-        Submitted By:-
Prof. S C Himbade   Kumar Gaurav
                    Roll no :- 26
Research work At a Glance

 1. What is J2ME.
 2. Introduction to Java
 3. Why J2ME
 4. Evolution of J2me
 5. Overview
 6. MIDP
 7. CLDC
 8. CDC
 9. J2ME Vs. J2EE
 10. Limitation
What is J2ME
J2ME is a family of specifications that defines various
  downsized versions of the standard Java 2 platform;
  these downsized versions can be used to program
  consumer electronic devices ranging from cell phones
  to highly capable Personal Data Assistants (PDAs),
  smart phones, and set-top boxes.
 J2ME is a reduced version of Java for small devices



            ”write once, run anywhere”
J2ME Overview
• Java
  – A programming language
    developed by Sun Microsystems
  – Required a Virtual machine to
    interpret the source codes and
    generate bytecode
  – Syntax is similar to C++
  – Platform independent feature



                                     4
J2ME Overview
• Java2 is divided into three platforms
   – J2EE (Java2 Enterprise Edition)
       • Business applications.
   – J2SE (Java2 Standard Edition)
       • General applications
   – J2ME (Java2 Micro Edition)
       • Small devices such as mobile phone, PDA, car
         navigation.
The above three editions target for different devices or
 systems
Java Family




      -- java.sun.com (2003)
Why J2ME ?
Environment requirements
• We need an environment which is adapted for
  constrained devices - devices that have limitations on
  what they can do when compared to standard desktop
  or server computers.
• The constraints are:
   –   extremely limited memory
   –   small screen sizes
   –   alternative input methods
   –   slow processors



                              J2ME
So – what’s the solution?

• Because of the vast
  need, Sun has decided
  to develop a special
  edition of Java -
  J2ME (Java 2 Micro
  Edition).


                     J2ME
Let’s us try to answer it ?
J2ME is targeted to developers of intelligent wireless devices
and small computing devices who need to incorporate cross-
platform functionality in their products.




J2ME is used on the devices with limited resources (Resource
constraint devices) like Mobile phone, PDAs, Set top
box, screenphone, wireless, car, and digital assistant
Contd..
 The J2ME platform maintains the qualities that Java
  technology has become famous for:
• Built-in consistency across products in terms of
      running anywhere, anytime, over any device
• Portability of the code
• Leveraging of the same Java programming
      language
• Safe network delivery
• Applications written with J2ME technology are
      upwardly scalable to work with the J2SE and
      J2EE platforms
Evolution Of J2ME
Java Editions
• Different devices have different requirements
  and different expectations of Java.
• One platform (solution) cannot address all the
  market segments (web server, video games
  etc.)
• Users/developers want flexibility. They want
  to choose what they want to use and what they
  do not.


                       J2ME
Java Editions
• The Java 2 Platform is split into three editions.
• Each edition provides a complete environment
  for running Java-based applications, including
  the Java virtual machine (VM) and runtime
  classes.
• The three editions target different kinds of
  applications running on different kinds of
  devices.


                        J2ME
Java Editions

                            Java 2 Platform



     Java2                      Java2               Java2
Standard Edition           Enterprise Edition    Micro Edition
    (J2SE™)                    (J2EE™)            (J2ME™)



Standard desktop &          Heavy duty server   Small & memory
workstation applications    systems             constrained devices


                                   J2ME
Java Editions
• Each edition defines different sets of class
  libraries.
• There are thousands of core J2SE runtime
  classes, taking up to 10-20 megabytes
  of space.
• J2ME-based devices have              J2EE

  fewer classes.                            J2SE


                                               J2ME



                            J2ME
Contd.
• Announced in June 1999 at the JavaOne Developer
  Conference, J2ME brings the cross-platform
  functionality of the Java language to smaller devices.
• In 2000 Sun extended Personal Java for handsets with
  a JavaPhone API which found its way into several
  SymbianOS 6 implementations. It was to target PDAs
  and SmartPhones. Several of these extensions became
  new classes in the J2ME via the Personal Profile and
  the Personal Basis Profile
J2ME Overview
J2ME Core Concepts
• Configuration
                                        J2ME
   – Minimum platform                   Profile
     required for a
     group of devices
                                        J2ME
• Profile                              Libraries

   – Addresses specific             Java Language
     needs of a certain
     device family               Java Virtual Machine

• Optional Packages
                                 Host Operating System

                          J2ME
J2ME Core Concepts
J2ME is based on 3 core concepts:
• Configuration
• Profiles
• Optional packages




                      J2ME
Configurations
• A configuration is a complete Java runtime
  environment, consisting of:
  – Java virtual machine (VM) to execute Java
    bytecode
  – Native code to interface to the underlying system
  – Set of core Java runtime classes
• To use a configuration, a device must meet
  certain minimum requirements.

                         J2ME
Configurations
• The set of core classes is normally quite small
  and must be enhanced with additional classes
  supplied by J2ME profiles or by configuration
  implementor.
• Configurations do not define any user
  interface classes.



                       J2ME
Configurations

                 Configuration




     CLDC                            CDC
 Connected Limited               Connected Device
Device Configuration               Configuration




                       J2ME
Connected Limited Device Configuration (CLDC)
  CLDC is aimed at the low end of the consumer electronics range.


• 16-bit or 32-bit small computing devices with
  limited memory.
• These devices usually have between 160KB and
  512KB of available memory.
• Usually these are powered by battery.
• They use small-bandwidth network wireless
  connection.
• These devices include pagers, personal digital
  assistants, cell phones, dedicated terminals, and
  handheld consumer device.
Connected Device Configuration (CDC)

  CDC for plug-in devices:CDC(Connected Device
  Configuration) devices use a
• 32-bit architecture, have at least 2 MB of memory
  available, and
• Implement a complete functional JVM. CDC devices
  include digital set-top boxes, home appliances, navigation
  systems, point-of-sale terminals, and smart phones.
CLDC vs. CDC
• CLDC                         • CDC
   – For very constrained         – 2 MB or more memory
     devices                        for Java platform
   – 160 - 512 KB of total        – 32-bit processor
     memory                       – High bandwidth
   – 16-bit or 32-bit               network connection,
     processor                      most often using
   – Low power                      TCP/IP
     consumption and
     often operating with
     battery power
   – Connectivity with
     limited bandwidth
                             J2ME
J2ME Core Concepts
J2ME is based on 3 core concepts:
• Configurations
• Profiles
• Optional packages




                      J2ME
Profiles
• Adds domain-specific classes to a configuration:
   – To fill in missing functionality
   – To support specific uses of a device
• Most profiles define user interface classes for
  building interactive applications.
• To use a profile, the device must meet the minimum
  requirements of the underlying configuration and of
  the profile.



                              J2ME
The Mobile Information Device Profile
              and MIDlets
• The Mobile Information Device Profile, or MIDP
  for short, is one such profile, intended for use on
  small footprint devices with a limited user
  interface in the form of a small screen with some
  kind of input capability.
• Java applications that run on MIDP devices are
  known as MIDlets. A MIDlet consists of atleast
  one Java class
MIDP Hardware Requirements
Hardware         Minimum Requirement
Display           96 X 54 Pixels 65,536 colors

Memory            32 KB workspace
                  128KB MIDP Implementation
                  8KB for MIDlets run
                   the device has the equivalent of a keypad that
Input Device   allows the user to type the numbers 0 through
               9,together with the equivalent of arrow keys and a
               select button


Connectivity       HTTP 1.1; TCP/IP
MIDP vs J2SE
•   No floating point (CLDC 1.0)
•   No Object Finalization
•   No Reflection
•   No Native Methods
•   Threading, but no use of interrupt()
•   No file-based I/O
•   Many classes with fewer methods
•   Collections (Vector, Hashtable & Stack)
J2ME Core Concepts
J2ME is based on 3 core concepts:
• Configurations
• Profiles
• Optional packages




                      J2ME
Optional Packages
• Set of APIs in support of additional, common
  behaviors.
• Have specific dependencies on a particular
  configuration and/or one or more profiles.
• Examples of optional packages :
  – RMI Optional Package
  – Bluetooth Optional Package
  – JDBC Optional Package

                       J2ME
How To Start
Getting Started…

– 1st step: Download sun’s J2ME Wireless
  Toolkit from:
 http://java.sun.com/products/j2mewtoolkit/do
 wnload-2_1.html
– 2nd step: Make sure you have J2SE SDK
  installed
– 3rd step: Install the J2ME Toolkit.


                   J2ME
After the installation….
• Shortcuts are available from the start menu.




• New directories
  created


                         J2ME
Using KToolbar




      J2ME
Creating a new Application
• Press “New Project”.
• Enter the project’s name and the MIDlet’s class
  name.
• New directories will automatically be created.




                         J2ME
Where to place your files?
J2ME/apps/{proj}       source, resource, and binary
                       files
J2ME/apps/{proj}/bin   JAR, JAD, unpacked manifest
                       files.
J2ME/apps/{proj}/lib   external class libraries, (JAR or
                       ZIP) for a specific project
J2ME/apps/{proj}/res   resource files

J2ME/apps/{proj}/src   source files

                       external class libraries, (JAR or
J2ME/apps/lib
                       ZIP) for all KToolbar projects.
                          J2ME
And then what?
• Choose the target platform
• Write your code Java Technology for the Wireless Industry
      JTWI - conforms to
      (JSR-185).
• SaveMIDP1.0 - includes MIDP 1.0 and CLDC 1.0
      Custom - user defined settings, you can select project
• Build
      profile, configurations and various APIs.
  (Compile + Preverify)
• Run




                                  J2ME
Distribution to actual devices
•   Create a package
•   Place your code somewhere on the net.
•   Update .jad file
•   Download the application to your mobile
•   Start playing… 




                        J2ME
4. Overall Evaluation
               Advantages


                      – Game building

                      – Network applications

                      – Rapid prototiping




© artesis 2008 | 42
4. Overall Evaluation
      Limitations

      • Accessing device resources

      • Multimedia applications

      • Performance-intensive applications



© artesis 2008 | 43
Q&A


Any questions??
J2ME

Weitere ähnliche Inhalte

Was ist angesagt?

Mobile transport layer - traditional TCP
Mobile transport layer - traditional TCPMobile transport layer - traditional TCP
Mobile transport layer - traditional TCPVishal Tandel
 
Jdbc architecture and driver types ppt
Jdbc architecture and driver types pptJdbc architecture and driver types ppt
Jdbc architecture and driver types pptkamal kotecha
 
IOT15_Unit6.pptx
IOT15_Unit6.pptxIOT15_Unit6.pptx
IOT15_Unit6.pptxsuptel
 
Unit 1 - mobile computing introduction
Unit 1 - mobile computing introductionUnit 1 - mobile computing introduction
Unit 1 - mobile computing introductionVintesh Patel
 
Mac protocols for ad hoc wireless networks
Mac protocols for ad hoc wireless networks Mac protocols for ad hoc wireless networks
Mac protocols for ad hoc wireless networks Divya Tiwari
 
Computer network switching
Computer network switchingComputer network switching
Computer network switchingShivani Godha
 
Mac protocols
Mac protocolsMac protocols
Mac protocolsjuno susi
 
Course Notes-Unit 5.ppt
Course Notes-Unit 5.pptCourse Notes-Unit 5.ppt
Course Notes-Unit 5.pptSafaM3
 
IOT System Management with NETCONF-YANG.pptx
IOT System Management with NETCONF-YANG.pptxIOT System Management with NETCONF-YANG.pptx
IOT System Management with NETCONF-YANG.pptxArchanaPandiyan
 
JDBC: java DataBase connectivity
JDBC: java DataBase connectivityJDBC: java DataBase connectivity
JDBC: java DataBase connectivityTanmoy Barman
 
VANET in Mobile Computing
VANET in Mobile ComputingVANET in Mobile Computing
VANET in Mobile ComputingKABILESH RAMAR
 
Java history, versions, types of errors and exception, quiz
Java history, versions, types of errors and exception, quiz Java history, versions, types of errors and exception, quiz
Java history, versions, types of errors and exception, quiz SAurabh PRajapati
 
SDN( Software Defined Network) and NFV(Network Function Virtualization) for I...
SDN( Software Defined Network) and NFV(Network Function Virtualization) for I...SDN( Software Defined Network) and NFV(Network Function Virtualization) for I...
SDN( Software Defined Network) and NFV(Network Function Virtualization) for I...Sagar Rai
 

Was ist angesagt? (20)

Mobile transport layer - traditional TCP
Mobile transport layer - traditional TCPMobile transport layer - traditional TCP
Mobile transport layer - traditional TCP
 
Iot lab manual new
Iot lab manual newIot lab manual new
Iot lab manual new
 
GPRS
GPRSGPRS
GPRS
 
Jdbc architecture and driver types ppt
Jdbc architecture and driver types pptJdbc architecture and driver types ppt
Jdbc architecture and driver types ppt
 
IOT15_Unit6.pptx
IOT15_Unit6.pptxIOT15_Unit6.pptx
IOT15_Unit6.pptx
 
Unit 1 - mobile computing introduction
Unit 1 - mobile computing introductionUnit 1 - mobile computing introduction
Unit 1 - mobile computing introduction
 
Mac protocols for ad hoc wireless networks
Mac protocols for ad hoc wireless networks Mac protocols for ad hoc wireless networks
Mac protocols for ad hoc wireless networks
 
Distributed System ppt
Distributed System pptDistributed System ppt
Distributed System ppt
 
Manet
ManetManet
Manet
 
Computer network switching
Computer network switchingComputer network switching
Computer network switching
 
Mac protocols
Mac protocolsMac protocols
Mac protocols
 
Dsdv
DsdvDsdv
Dsdv
 
Course Notes-Unit 5.ppt
Course Notes-Unit 5.pptCourse Notes-Unit 5.ppt
Course Notes-Unit 5.ppt
 
IOT System Management with NETCONF-YANG.pptx
IOT System Management with NETCONF-YANG.pptxIOT System Management with NETCONF-YANG.pptx
IOT System Management with NETCONF-YANG.pptx
 
Cluster Computing
Cluster ComputingCluster Computing
Cluster Computing
 
JDBC: java DataBase connectivity
JDBC: java DataBase connectivityJDBC: java DataBase connectivity
JDBC: java DataBase connectivity
 
Windows CE
Windows CEWindows CE
Windows CE
 
VANET in Mobile Computing
VANET in Mobile ComputingVANET in Mobile Computing
VANET in Mobile Computing
 
Java history, versions, types of errors and exception, quiz
Java history, versions, types of errors and exception, quiz Java history, versions, types of errors and exception, quiz
Java history, versions, types of errors and exception, quiz
 
SDN( Software Defined Network) and NFV(Network Function Virtualization) for I...
SDN( Software Defined Network) and NFV(Network Function Virtualization) for I...SDN( Software Defined Network) and NFV(Network Function Virtualization) for I...
SDN( Software Defined Network) and NFV(Network Function Virtualization) for I...
 

Andere mochten auch

Andere mochten auch (16)

J2ME
J2MEJ2ME
J2ME
 
J2ME
J2MEJ2ME
J2ME
 
J2ME
J2MEJ2ME
J2ME
 
J2ME mobile app development
J2ME mobile app developmentJ2ME mobile app development
J2ME mobile app development
 
03. cse.sylbs
03. cse.sylbs03. cse.sylbs
03. cse.sylbs
 
Java j2me pre
Java j2me preJava j2me pre
Java j2me pre
 
Java A Tope J2 Me (Java 2 Micro Edition)
Java A Tope  J2 Me (Java 2 Micro Edition)Java A Tope  J2 Me (Java 2 Micro Edition)
Java A Tope J2 Me (Java 2 Micro Edition)
 
J2me Presentacion
J2me PresentacionJ2me Presentacion
J2me Presentacion
 
Tweening and morphing
Tweening and morphingTweening and morphing
Tweening and morphing
 
1 Introduction To Java Technology
1 Introduction To Java Technology 1 Introduction To Java Technology
1 Introduction To Java Technology
 
Pervasive computing
Pervasive computingPervasive computing
Pervasive computing
 
Pervasive Computing
Pervasive ComputingPervasive Computing
Pervasive Computing
 
Pervasive Computing
Pervasive ComputingPervasive Computing
Pervasive Computing
 
Introduction to Java Programming
Introduction to Java ProgrammingIntroduction to Java Programming
Introduction to Java Programming
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
 
Java tutorial PPT
Java tutorial PPTJava tutorial PPT
Java tutorial PPT
 

Ähnlich wie J2ME

01 java 2 micro edition
01 java 2 micro edition01 java 2 micro edition
01 java 2 micro editioncorneliuskoo
 
010118565.pdf
010118565.pdf010118565.pdf
010118565.pdfEidTahir
 
Mobile Application Development MAD J2ME
Mobile Application Development  MAD J2MEMobile Application Development  MAD J2ME
Mobile Application Development MAD J2MEPallepati Vasavi
 
Java2 MicroEdition-J2ME
Java2 MicroEdition-J2MEJava2 MicroEdition-J2ME
Java2 MicroEdition-J2MERohan Chandane
 
MOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMSMOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMSSenthil Kanth
 
Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Wambua Wambua
 
Chapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side TechnologiesChapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side TechnologiesIt Academy
 
Enhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_osEnhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_osArnav Gupta
 
Game Development for Nokia Asha Devices with Java ME #1
Game Development for Nokia Asha Devices with Java ME #1Game Development for Nokia Asha Devices with Java ME #1
Game Development for Nokia Asha Devices with Java ME #1Marlon Luz
 
Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Marlon Luz
 
Introduction to java micro edition
Introduction to java micro editionIntroduction to java micro edition
Introduction to java micro editionRaphael Wanjiku
 
android vs symbian
android  vs symbianandroid  vs symbian
android vs symbianAJAL A J
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007Edoardo Schepis
 
Mobile operating system..
Mobile operating system..Mobile operating system..
Mobile operating system..Aashish Uppal
 

Ähnlich wie J2ME (20)

J2 me 1
J2 me 1J2 me 1
J2 me 1
 
J2me Platform
J2me PlatformJ2me Platform
J2me Platform
 
J2me
J2meJ2me
J2me
 
01 java 2 micro edition
01 java 2 micro edition01 java 2 micro edition
01 java 2 micro edition
 
010118565.pdf
010118565.pdf010118565.pdf
010118565.pdf
 
Mobile Application Development MAD J2ME
Mobile Application Development  MAD J2MEMobile Application Development  MAD J2ME
Mobile Application Development MAD J2ME
 
Java2 MicroEdition-J2ME
Java2 MicroEdition-J2MEJava2 MicroEdition-J2ME
Java2 MicroEdition-J2ME
 
MOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMSMOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMS
 
Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)
 
Java J2ME
Java J2MEJava J2ME
Java J2ME
 
Chapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side TechnologiesChapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side Technologies
 
J2ME Unit_01
J2ME Unit_01J2ME Unit_01
J2ME Unit_01
 
Enhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_osEnhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_os
 
Game Development for Nokia Asha Devices with Java ME #1
Game Development for Nokia Asha Devices with Java ME #1Game Development for Nokia Asha Devices with Java ME #1
Game Development for Nokia Asha Devices with Java ME #1
 
Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1
 
03 midp
03 midp03 midp
03 midp
 
Introduction to java micro edition
Introduction to java micro editionIntroduction to java micro edition
Introduction to java micro edition
 
android vs symbian
android  vs symbianandroid  vs symbian
android vs symbian
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007
 
Mobile operating system..
Mobile operating system..Mobile operating system..
Mobile operating system..
 

Mehr von Kumar Gaurav

Mehr von Kumar Gaurav (6)

Numerical method
Numerical methodNumerical method
Numerical method
 
Cellular network History
Cellular network HistoryCellular network History
Cellular network History
 
Cellular networks
Cellular networksCellular networks
Cellular networks
 
Standard Template Library
Standard Template LibraryStandard Template Library
Standard Template Library
 
Polymorphism
PolymorphismPolymorphism
Polymorphism
 
Python
PythonPython
Python
 

Kürzlich hochgeladen

Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...Sapna Thakur
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...PsychoTech Services
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 

Kürzlich hochgeladen (20)

Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 

J2ME

  • 1. Introduction of J2ME ! Guided By :- Submitted By:- Prof. S C Himbade Kumar Gaurav Roll no :- 26
  • 2. Research work At a Glance 1. What is J2ME. 2. Introduction to Java 3. Why J2ME 4. Evolution of J2me 5. Overview 6. MIDP 7. CLDC 8. CDC 9. J2ME Vs. J2EE 10. Limitation
  • 3. What is J2ME J2ME is a family of specifications that defines various downsized versions of the standard Java 2 platform; these downsized versions can be used to program consumer electronic devices ranging from cell phones to highly capable Personal Data Assistants (PDAs), smart phones, and set-top boxes. J2ME is a reduced version of Java for small devices ”write once, run anywhere”
  • 4. J2ME Overview • Java – A programming language developed by Sun Microsystems – Required a Virtual machine to interpret the source codes and generate bytecode – Syntax is similar to C++ – Platform independent feature 4
  • 5. J2ME Overview • Java2 is divided into three platforms – J2EE (Java2 Enterprise Edition) • Business applications. – J2SE (Java2 Standard Edition) • General applications – J2ME (Java2 Micro Edition) • Small devices such as mobile phone, PDA, car navigation. The above three editions target for different devices or systems
  • 6. Java Family -- java.sun.com (2003)
  • 8. Environment requirements • We need an environment which is adapted for constrained devices - devices that have limitations on what they can do when compared to standard desktop or server computers. • The constraints are: – extremely limited memory – small screen sizes – alternative input methods – slow processors J2ME
  • 9. So – what’s the solution? • Because of the vast need, Sun has decided to develop a special edition of Java - J2ME (Java 2 Micro Edition). J2ME
  • 10. Let’s us try to answer it ? J2ME is targeted to developers of intelligent wireless devices and small computing devices who need to incorporate cross- platform functionality in their products. J2ME is used on the devices with limited resources (Resource constraint devices) like Mobile phone, PDAs, Set top box, screenphone, wireless, car, and digital assistant
  • 11. Contd.. The J2ME platform maintains the qualities that Java technology has become famous for: • Built-in consistency across products in terms of running anywhere, anytime, over any device • Portability of the code • Leveraging of the same Java programming language • Safe network delivery • Applications written with J2ME technology are upwardly scalable to work with the J2SE and J2EE platforms
  • 13. Java Editions • Different devices have different requirements and different expectations of Java. • One platform (solution) cannot address all the market segments (web server, video games etc.) • Users/developers want flexibility. They want to choose what they want to use and what they do not. J2ME
  • 14. Java Editions • The Java 2 Platform is split into three editions. • Each edition provides a complete environment for running Java-based applications, including the Java virtual machine (VM) and runtime classes. • The three editions target different kinds of applications running on different kinds of devices. J2ME
  • 15. Java Editions Java 2 Platform Java2 Java2 Java2 Standard Edition Enterprise Edition Micro Edition (J2SE™) (J2EE™) (J2ME™) Standard desktop & Heavy duty server Small & memory workstation applications systems constrained devices J2ME
  • 16. Java Editions • Each edition defines different sets of class libraries. • There are thousands of core J2SE runtime classes, taking up to 10-20 megabytes of space. • J2ME-based devices have J2EE fewer classes. J2SE J2ME J2ME
  • 17. Contd. • Announced in June 1999 at the JavaOne Developer Conference, J2ME brings the cross-platform functionality of the Java language to smaller devices. • In 2000 Sun extended Personal Java for handsets with a JavaPhone API which found its way into several SymbianOS 6 implementations. It was to target PDAs and SmartPhones. Several of these extensions became new classes in the J2ME via the Personal Profile and the Personal Basis Profile
  • 19. J2ME Core Concepts • Configuration J2ME – Minimum platform Profile required for a group of devices J2ME • Profile Libraries – Addresses specific Java Language needs of a certain device family Java Virtual Machine • Optional Packages Host Operating System J2ME
  • 20. J2ME Core Concepts J2ME is based on 3 core concepts: • Configuration • Profiles • Optional packages J2ME
  • 21. Configurations • A configuration is a complete Java runtime environment, consisting of: – Java virtual machine (VM) to execute Java bytecode – Native code to interface to the underlying system – Set of core Java runtime classes • To use a configuration, a device must meet certain minimum requirements. J2ME
  • 22. Configurations • The set of core classes is normally quite small and must be enhanced with additional classes supplied by J2ME profiles or by configuration implementor. • Configurations do not define any user interface classes. J2ME
  • 23. Configurations Configuration CLDC CDC Connected Limited Connected Device Device Configuration Configuration J2ME
  • 24. Connected Limited Device Configuration (CLDC) CLDC is aimed at the low end of the consumer electronics range. • 16-bit or 32-bit small computing devices with limited memory. • These devices usually have between 160KB and 512KB of available memory. • Usually these are powered by battery. • They use small-bandwidth network wireless connection. • These devices include pagers, personal digital assistants, cell phones, dedicated terminals, and handheld consumer device.
  • 25. Connected Device Configuration (CDC) CDC for plug-in devices:CDC(Connected Device Configuration) devices use a • 32-bit architecture, have at least 2 MB of memory available, and • Implement a complete functional JVM. CDC devices include digital set-top boxes, home appliances, navigation systems, point-of-sale terminals, and smart phones.
  • 26. CLDC vs. CDC • CLDC • CDC – For very constrained – 2 MB or more memory devices for Java platform – 160 - 512 KB of total – 32-bit processor memory – High bandwidth – 16-bit or 32-bit network connection, processor most often using – Low power TCP/IP consumption and often operating with battery power – Connectivity with limited bandwidth J2ME
  • 27. J2ME Core Concepts J2ME is based on 3 core concepts: • Configurations • Profiles • Optional packages J2ME
  • 28. Profiles • Adds domain-specific classes to a configuration: – To fill in missing functionality – To support specific uses of a device • Most profiles define user interface classes for building interactive applications. • To use a profile, the device must meet the minimum requirements of the underlying configuration and of the profile. J2ME
  • 29. The Mobile Information Device Profile and MIDlets • The Mobile Information Device Profile, or MIDP for short, is one such profile, intended for use on small footprint devices with a limited user interface in the form of a small screen with some kind of input capability. • Java applications that run on MIDP devices are known as MIDlets. A MIDlet consists of atleast one Java class
  • 30. MIDP Hardware Requirements Hardware Minimum Requirement Display 96 X 54 Pixels 65,536 colors Memory 32 KB workspace 128KB MIDP Implementation 8KB for MIDlets run the device has the equivalent of a keypad that Input Device allows the user to type the numbers 0 through 9,together with the equivalent of arrow keys and a select button Connectivity HTTP 1.1; TCP/IP
  • 31. MIDP vs J2SE • No floating point (CLDC 1.0) • No Object Finalization • No Reflection • No Native Methods • Threading, but no use of interrupt() • No file-based I/O • Many classes with fewer methods • Collections (Vector, Hashtable & Stack)
  • 32. J2ME Core Concepts J2ME is based on 3 core concepts: • Configurations • Profiles • Optional packages J2ME
  • 33. Optional Packages • Set of APIs in support of additional, common behaviors. • Have specific dependencies on a particular configuration and/or one or more profiles. • Examples of optional packages : – RMI Optional Package – Bluetooth Optional Package – JDBC Optional Package J2ME
  • 35. Getting Started… – 1st step: Download sun’s J2ME Wireless Toolkit from: http://java.sun.com/products/j2mewtoolkit/do wnload-2_1.html – 2nd step: Make sure you have J2SE SDK installed – 3rd step: Install the J2ME Toolkit. J2ME
  • 36. After the installation…. • Shortcuts are available from the start menu. • New directories created J2ME
  • 38. Creating a new Application • Press “New Project”. • Enter the project’s name and the MIDlet’s class name. • New directories will automatically be created. J2ME
  • 39. Where to place your files? J2ME/apps/{proj} source, resource, and binary files J2ME/apps/{proj}/bin JAR, JAD, unpacked manifest files. J2ME/apps/{proj}/lib external class libraries, (JAR or ZIP) for a specific project J2ME/apps/{proj}/res resource files J2ME/apps/{proj}/src source files external class libraries, (JAR or J2ME/apps/lib ZIP) for all KToolbar projects. J2ME
  • 40. And then what? • Choose the target platform • Write your code Java Technology for the Wireless Industry JTWI - conforms to (JSR-185). • SaveMIDP1.0 - includes MIDP 1.0 and CLDC 1.0 Custom - user defined settings, you can select project • Build profile, configurations and various APIs. (Compile + Preverify) • Run J2ME
  • 41. Distribution to actual devices • Create a package • Place your code somewhere on the net. • Update .jad file • Download the application to your mobile • Start playing…  J2ME
  • 42. 4. Overall Evaluation Advantages – Game building – Network applications – Rapid prototiping © artesis 2008 | 42
  • 43. 4. Overall Evaluation Limitations • Accessing device resources • Multimedia applications • Performance-intensive applications © artesis 2008 | 43