SlideShare a Scribd company logo
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

More Related Content

What's hot

Android Operating System Architecture
Android Operating System ArchitectureAndroid Operating System Architecture
Android Operating System Architecture
DINESH KUMAR ARIVARASAN
 
UNIT-5 IoT Reference Architecture.pdf
UNIT-5 IoT Reference Architecture.pdfUNIT-5 IoT Reference Architecture.pdf
UNIT-5 IoT Reference Architecture.pdf
MansiMehta96928
 
Aneka platform
Aneka platformAneka platform
Aneka platform
Shyam Krishna Khadka
 
Mobile Application Development,J2ME,UNIT-4-JNTU
Mobile Application Development,J2ME,UNIT-4-JNTUMobile Application Development,J2ME,UNIT-4-JNTU
Mobile Application Development,J2ME,UNIT-4-JNTU
Pallepati Vasavi
 
Android Project Presentation
Android Project PresentationAndroid Project Presentation
Android Project Presentation
Laxmi Kant Yadav
 
Google App Engine ppt
Google App Engine  pptGoogle App Engine  ppt
Virtualization
Virtualization Virtualization
Virtualization
Ydel Capales
 
Introduction to Mobile programming(J2ME)
Introduction to Mobile programming(J2ME)Introduction to Mobile programming(J2ME)
Introduction to Mobile programming(J2ME)Wambua Wambua
 
Blackberry os
Blackberry osBlackberry os
Blackberry os
Jayanthi Janani
 
Mobile operating system
Mobile operating systemMobile operating system
Mobile operating system
Arindam Ganguly
 
Android Platform Architecture
Android Platform ArchitectureAndroid Platform Architecture
Android Platform Architecture
Naresh Chintalcheru
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android ppt
Taha Malampatti
 
Android - Application Framework
Android - Application FrameworkAndroid - Application Framework
Android - Application Framework
Yong Heui Cho
 
Presentation on Android application
Presentation on Android applicationPresentation on Android application
Presentation on Android applicationAtibur Rahman
 
Google App Engine (Introduction)
Google App Engine (Introduction)Google App Engine (Introduction)
Google App Engine (Introduction)
Praveen Hanchinal
 
Common Standards in Cloud Computing
Common Standards in Cloud ComputingCommon Standards in Cloud Computing
Common Standards in Cloud Computing
mrzahidfaiz.blogspot.com
 
Virtualization.ppt
Virtualization.pptVirtualization.ppt
Virtualization.ppt
vishal choudhary
 
Design challenges in embedded systems
Design challenges in embedded systemsDesign challenges in embedded systems
Design challenges in embedded systems
mahalakshmimalini
 
Introduction to Android and Android Studio
Introduction to Android and Android StudioIntroduction to Android and Android Studio
Introduction to Android and Android Studio
Suyash Srijan
 

What's hot (20)

Android ppt
Android ppt Android ppt
Android ppt
 
Android Operating System Architecture
Android Operating System ArchitectureAndroid Operating System Architecture
Android Operating System Architecture
 
UNIT-5 IoT Reference Architecture.pdf
UNIT-5 IoT Reference Architecture.pdfUNIT-5 IoT Reference Architecture.pdf
UNIT-5 IoT Reference Architecture.pdf
 
Aneka platform
Aneka platformAneka platform
Aneka platform
 
Mobile Application Development,J2ME,UNIT-4-JNTU
Mobile Application Development,J2ME,UNIT-4-JNTUMobile Application Development,J2ME,UNIT-4-JNTU
Mobile Application Development,J2ME,UNIT-4-JNTU
 
Android Project Presentation
Android Project PresentationAndroid Project Presentation
Android Project Presentation
 
Google App Engine ppt
Google App Engine  pptGoogle App Engine  ppt
Google App Engine ppt
 
Virtualization
Virtualization Virtualization
Virtualization
 
Introduction to Mobile programming(J2ME)
Introduction to Mobile programming(J2ME)Introduction to Mobile programming(J2ME)
Introduction to Mobile programming(J2ME)
 
Blackberry os
Blackberry osBlackberry os
Blackberry os
 
Mobile operating system
Mobile operating systemMobile operating system
Mobile operating system
 
Android Platform Architecture
Android Platform ArchitectureAndroid Platform Architecture
Android Platform Architecture
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android ppt
 
Android - Application Framework
Android - Application FrameworkAndroid - Application Framework
Android - Application Framework
 
Presentation on Android application
Presentation on Android applicationPresentation on Android application
Presentation on Android application
 
Google App Engine (Introduction)
Google App Engine (Introduction)Google App Engine (Introduction)
Google App Engine (Introduction)
 
Common Standards in Cloud Computing
Common Standards in Cloud ComputingCommon Standards in Cloud Computing
Common Standards in Cloud Computing
 
Virtualization.ppt
Virtualization.pptVirtualization.ppt
Virtualization.ppt
 
Design challenges in embedded systems
Design challenges in embedded systemsDesign challenges in embedded systems
Design challenges in embedded systems
 
Introduction to Android and Android Studio
Introduction to Android and Android StudioIntroduction to Android and Android Studio
Introduction to Android and Android Studio
 

Viewers also liked

J2ME
J2MEJ2ME
J2ME mobile app development
J2ME mobile app developmentJ2ME mobile app development
J2ME mobile app development
Muthu Kumar
 
03. cse.sylbs
03. cse.sylbs03. cse.sylbs
03. cse.sylbs
AaDi RA
 
Java j2me pre
Java j2me preJava j2me pre
Java j2me prejtk1
 
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)
Mauro Gomez Mejia
 
J2me Presentacion
J2me PresentacionJ2me Presentacion
J2me Presentacionvivian7894
 
Tweening and morphing
Tweening and morphingTweening and morphing
Tweening and morphingAmit Kapoor
 
1 Introduction To Java Technology
1 Introduction To Java Technology 1 Introduction To Java Technology
1 Introduction To Java Technology
dM Technologies
 
Pervasive computing
Pervasive computingPervasive computing
Pervasive computingPreethi AKNR
 
Pervasive Computing
Pervasive ComputingPervasive Computing
Pervasive Computing
Ankita Gupta
 
Introduction to Java Programming
Introduction to Java ProgrammingIntroduction to Java Programming
Introduction to Java Programming
Ravi Kant Sahu
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
Veerabadra Badra
 
Java tutorial PPT
Java tutorial PPTJava tutorial PPT
Java tutorial PPT
Intelligo Technologies
 

Viewers also liked (15)

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
 

Similar to J2ME

J2me Platform
J2me PlatformJ2me Platform
J2me Platform
Kamal Patel
 
01 java 2 micro edition
01 java 2 micro edition01 java 2 micro edition
01 java 2 micro edition
corneliuskoo
 
010118565.pdf
010118565.pdf010118565.pdf
010118565.pdf
EidTahir
 
Java2 MicroEdition-J2ME
Java2 MicroEdition-J2MEJava2 MicroEdition-J2ME
Java2 MicroEdition-J2ME
Rohan Chandane
 
MOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMSMOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMS
Senthil Kanth
 
Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Wambua Wambua
 
Java J2ME
Java J2MEJava J2ME
Java J2ME
marada0033
 
Chapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side TechnologiesChapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side Technologies
It Academy
 
J2ME Unit_01
J2ME Unit_01J2ME Unit_01
J2ME Unit_01
Prashanth Shivakumar
 
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
Arnav 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 #1
Marlon Luz
 
Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1
Marlon Luz
 
03 midp
03 midp03 midp
03 midp
corneliuskoo
 
Introduction to java micro edition
Introduction to java micro editionIntroduction to java micro edition
Introduction to java micro edition
Raphael Wanjiku
 
android vs symbian
android  vs symbianandroid  vs symbian
android vs symbian
AJAL 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
 
Chapter 10:Understanding Java Related Platforms and Integration Technologies
Chapter 10:Understanding Java Related Platforms and Integration TechnologiesChapter 10:Understanding Java Related Platforms and Integration Technologies
Chapter 10:Understanding Java Related Platforms and Integration Technologies
It Academy
 

Similar to 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
 
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..
 
Chapter 10:Understanding Java Related Platforms and Integration Technologies
Chapter 10:Understanding Java Related Platforms and Integration TechnologiesChapter 10:Understanding Java Related Platforms and Integration Technologies
Chapter 10:Understanding Java Related Platforms and Integration Technologies
 

More from Kumar Gaurav

Cellular network History
Cellular network HistoryCellular network History
Cellular network HistoryKumar Gaurav
 
Standard Template Library
Standard Template LibraryStandard Template Library
Standard Template Library
Kumar Gaurav
 

More from 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
 

Recently uploaded

Guidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th SemesterGuidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Atul Kumar Singh
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
GeoBlogs
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
DhatriParmar
 
Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345
beazzy04
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
Pavel ( NSTU)
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
Vivekanand Anglo Vedic Academy
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
EugeneSaldivar
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 
Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
joachimlavalley1
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
Jheel Barad
 
678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf
CarlosHernanMontoyab2
 
Francesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptxFrancesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptx
EduSkills OECD
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
DeeptiGupta154
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
TechSoup
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
Nguyen Thanh Tu Collection
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
RaedMohamed3
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
Celine George
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
JosvitaDsouza2
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
Vikramjit Singh
 

Recently uploaded (20)

Guidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th SemesterGuidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th Semester
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
 
Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 
Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
 
678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf
 
Francesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptxFrancesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptx
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
 

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