SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Java 2 Micro Edition (J2ME)
                        or
                     Java ME

                    Rohan Chandane
             rohan.chandane@indiatimes.com



These notes are created by me, Rohan Chandane as learning material while pursuing MSc (CA) from SICSR. (CC) 2005-07
Basics
   Sun's version of Java aimed at
    machines
       with limited hardware resources
        (PDAs, Cell Phones, Embedded devices)
       with less memory (128KB of RAM)
       with processors less powerful than desktop
        and server machines
Continued…
    A highly optimized Java runtime
     environment
    The collection of virtual machines, APIs
     and related elements that provide Java to
     handheld and embedded computing
     devices
Components of J2ME
   There are different variation in devices
    in terms of
       Memory
       Processor
   To support these differences, J2ME
    introduced the concept of
       Configurations
       Profiles
       Optional Package
Continued…
   Configurations
       Provide the base functionality
            For a particular range of devices that share
             similar characteristics like
                 Memory
                 Network Connectivity
       Two J2ME configurations
            Connected Limited Device Configuration (CLDC)
            Connected Device Configuration (CDC)
Continued…
   Profiles
       Profiles refers to APIs for a specific domain
       That sits on top of a given configuration
       Providing
            Specific features
                 Application life-cycle model
                 User interface
            Capabilities
                 Persistent storage
                 Access to device
Continued…
    Each profile define particular device
         Cell phones
         PDAs
         Microwave ovens, etc.
    In short, Profile is minimum set of class
     libraries required for the particular type of
     device
    Widely adopted profile
         Mobile Information Device Profile (MIDP)
Continued…
    We can use more than one profile at a
     time
         Provided that the virtual machine and device
          supports the functionality for the additional
          profile
Continued…
   Optional Package
       Extend the J2ME platform by adding extra
        functionality
       Offer standard APIs for using both existing
        and emerging technologies like
               Database connectivity
               Wireless messaging
               Multimedia
               3D graphics
               Web Services
The J2ME Platform
Details about Configuration
   Connected Limited Device Configuration
    (CLDC)
       For small wireless devices with intermittent
        (periodic) network connections
            Mobile phones
            Personal digital assistants
       Mobile Information Device Profile (MIDP),
        which is based on CLDC
Continued…
    Typical characteristics of a device that
     implements the CLDC
         128 KB of memory for running Java programs
         32 KB of memory for run time memory
          allocation
         16-/32-bit RISC/CISC processor
         A limited user interface
         Runs on battery power
         Some form of wireless network connection, low
          bandwidth
Continued…
    Support in CLDC
        Support floating point math
             CLDC 1.0 specification – does not support
             CLDC 1.1 specification – does support
Continued…
   Connected Device Configuration (CDC)
       For larger devices in terms of memory and
        processing power with robust network
        connections
            Set-top boxes
            Internet appliances
            Embedded servers
       Foundation Profile extends CDC
       It provides core APIs shared with Java SE
Continued…
    Typical characteristics of a device that
     implements the CDC
         512 kilobytes (minimum) memory for running
          Java programs
         256 kilobytes (minimum) for run time memory
          allocation
         Network connectivity, possibly persistent, and
          high-bandwidth
Details about Profiles
   Profiles have been defined for J2ME
   Built upon CLDC
       Mobile Information Device Profile (MIDP)
       KJava
   Built upon CDC
       Foundation Profile
       Personal Profile
Continued…
   Mobile Information Device Profile (MIDP)
       APIs built on top of the CLDC configuration
       Defines following APIs for cellular devices
            User Interface Components
            Input and Event handling
            Persistent storage
            Networking and timers
       Common, industry-standard profile
       Not dependent on a specific vendor
Continued…
    Versions of the MIDP specification
         Version 1.0
              Original specification
         Version 2.0
              Addressed many of the shortcomings
              Backwards compatible with version 1.0
Continued…
    MIDP contains the following packages
         Core CLDC packages
              java.lang
              java.io
              java.util
         MIDP-specific packages
              javax.microedition.io
              javax.microedition.lcdui
              javax.microedition.midlet
              javax.microedition.rms
Continued…
   KJava
       Sun's proprietary profile
       Built on top of the CLDC configuration
       Contains a Sun-specific API
            Which runs on the Palm OS
       It is not a standard J2ME package
            Main package is com.sun.kjava
Continued…
   Foundation Profile
       Intended for embedded and headless
        devices
       For devices that have no user interface
            Routers
            Gateway devices
       There are other profiles, such as Personal
        Profile, that are intended to run on top of
        the Foundation profile
Continued…
   Personal Profile
       Personal Profile is the JavaME replacement
        for PersonalJava
       Defines a minimal set of user interface
        APIs
Java editions & Applications
JCP & JSR
   Configurations and Profiles are defined
    by Java Community Process (JCP)
       JCP - Open industry working groups utilizing
        Sun's Java Community Process Program
       This program is formed by an expert group
        consisting of representatives from
        participating companies
Continued…
       In this way industries can decide for
        themselves what elements are necessary
        to provide a complete solution targeted at
        their industry
   Specifications for J2SE, J2EE and J2ME
    are developed under the JCP
Continued…
   Specification begins life as a Java
    Specification Request (JSR)
   JSR then passes through various stages
    in the JCP before it is finalized
   Every JSR is assigned a number
   J2ME specifications are commonly
    referred to by their JSR number
K Virtual Machine (KVM)
   For CDC
       The virtual machine has the same
        specification as J2SE
       That is Java Virtual Machine (JVM)
   For CLDC
       Sun has developed a reference
        implementation of a virtual machine,
        known as the K Virtual Machine
       Simply known as KVM
Continued…
   The KVM is Sun's implementation of a
    JVM that fits the guidelines of the CLDC
J2ME Architecture




quot;Genericquot; J2ME architecture   MID Profile architecture

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to Mobile programming(J2ME)
Introduction to Mobile programming(J2ME)Introduction to Mobile programming(J2ME)
Introduction to Mobile programming(J2ME)Wambua Wambua
 
MOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMSMOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMSSenthil Kanth
 
Mobile Application Development MAD J2ME UNIT 2
Mobile Application Development  MAD J2ME UNIT 2Mobile Application Development  MAD J2ME UNIT 2
Mobile Application Development MAD J2ME UNIT 2Pallepati Vasavi
 
Introduction to j2me
Introduction to j2meIntroduction to j2me
Introduction to j2meFae Kaal
 
Presenting Cloud Computing
Presenting Cloud ComputingPresenting Cloud Computing
Presenting Cloud ComputingNaveen Karn
 
Java ME CLDC MIDP
Java ME CLDC MIDPJava ME CLDC MIDP
Java ME CLDC MIDPSMIJava
 
Introduction to Java Micro Edition (ME) 8
Introduction to Java Micro Edition (ME) 8Introduction to Java Micro Edition (ME) 8
Introduction to Java Micro Edition (ME) 8terrencebarr
 
01 java 2 micro edition
01 java 2 micro edition01 java 2 micro edition
01 java 2 micro editioncorneliuskoo
 
Introduction to java micro edition
Introduction to java micro editionIntroduction to java micro edition
Introduction to java micro editionRaphael Wanjiku
 
Session1 j2me introduction
Session1  j2me introductionSession1  j2me introduction
Session1 j2me introductionmuthusvm
 
Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Wambua Wambua
 
Android internals
Android internalsAndroid internals
Android internalsrabah3
 
Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Marlon Luz
 
Campus portal for wireless devices
Campus portal for wireless devicesCampus portal for wireless devices
Campus portal for wireless devicesShiladitya Mandal
 

Was ist angesagt? (20)

J2ME
J2MEJ2ME
J2ME
 
Introduction to Mobile programming(J2ME)
Introduction to Mobile programming(J2ME)Introduction to Mobile programming(J2ME)
Introduction to Mobile programming(J2ME)
 
J2 me 1
J2 me 1J2 me 1
J2 me 1
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
 
MOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMSMOBILE APPs DEVELOPMENT PLATFORMS
MOBILE APPs DEVELOPMENT PLATFORMS
 
Mobile Application Development MAD J2ME UNIT 2
Mobile Application Development  MAD J2ME UNIT 2Mobile Application Development  MAD J2ME UNIT 2
Mobile Application Development MAD J2ME UNIT 2
 
Introduction to j2me
Introduction to j2meIntroduction to j2me
Introduction to j2me
 
Presenting Cloud Computing
Presenting Cloud ComputingPresenting Cloud Computing
Presenting Cloud Computing
 
Java ME CLDC MIDP
Java ME CLDC MIDPJava ME CLDC MIDP
Java ME CLDC MIDP
 
J2me Platform
J2me PlatformJ2me Platform
J2me Platform
 
08 Midlet Basic
08 Midlet Basic08 Midlet Basic
08 Midlet Basic
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating System
 
Introduction to Java Micro Edition (ME) 8
Introduction to Java Micro Edition (ME) 8Introduction to Java Micro Edition (ME) 8
Introduction to Java Micro Edition (ME) 8
 
01 java 2 micro edition
01 java 2 micro edition01 java 2 micro edition
01 java 2 micro edition
 
Introduction to java micro edition
Introduction to java micro editionIntroduction to java micro edition
Introduction to java micro edition
 
Session1 j2me introduction
Session1  j2me introductionSession1  j2me introduction
Session1 j2me introduction
 
Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)Introduction to mobile programing (J2ME)
Introduction to mobile programing (J2ME)
 
Android internals
Android internalsAndroid internals
Android internals
 
Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1Nokia Asha App Development - Part 1
Nokia Asha App Development - Part 1
 
Campus portal for wireless devices
Campus portal for wireless devicesCampus portal for wireless devices
Campus portal for wireless devices
 

Ähnlich wie Java2 MicroEdition-J2ME

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 TechnologiesIt Academy
 
Introduction to Java
Introduction to Java Introduction to Java
Introduction to Java Hitesh-Java
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007Edoardo Schepis
 
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
 
Session 01 - Introduction to Java
Session 01 - Introduction to JavaSession 01 - Introduction to Java
Session 01 - Introduction to JavaPawanMM
 
Egl Rui Ajax World
Egl Rui Ajax WorldEgl Rui Ajax World
Egl Rui Ajax Worldrajivmordani
 
Java database programming with jdbc
Java database programming with jdbcJava database programming with jdbc
Java database programming with jdbcsriram raj
 
010118565.pdf
010118565.pdf010118565.pdf
010118565.pdfEidTahir
 
Java programming(unit 1)
Java programming(unit 1)Java programming(unit 1)
Java programming(unit 1)SURBHI SAROHA
 
VMworld 2013: VMware Mirage 201
VMworld 2013: VMware Mirage 201VMworld 2013: VMware Mirage 201
VMworld 2013: VMware Mirage 201VMworld
 
Mobile Application Development JEDI
Mobile Application Development JEDIMobile Application Development JEDI
Mobile Application Development JEDIAlver Noquiao
 
Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Arun Gupta
 
Java keynote preso
Java keynote presoJava keynote preso
Java keynote presoArtur Alves
 
Chapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side TechnologiesChapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side TechnologiesIt Academy
 
"JavaME + Android in action" CCT-CEJUG Dezembro 2008
"JavaME + Android in action" CCT-CEJUG Dezembro 2008"JavaME + Android in action" CCT-CEJUG Dezembro 2008
"JavaME + Android in action" CCT-CEJUG Dezembro 2008Vando Batista
 

Ähnlich wie Java2 MicroEdition-J2ME (20)

J2me step by step
J2me step by stepJ2me step by step
J2me step by step
 
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
 
Introduction to Java
Introduction to Java Introduction to Java
Introduction to Java
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007
 
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
 
Session 01 - Introduction to Java
Session 01 - Introduction to JavaSession 01 - Introduction to Java
Session 01 - Introduction to Java
 
03 midp
03 midp03 midp
03 midp
 
Egl Rui Ajax World
Egl Rui Ajax WorldEgl Rui Ajax World
Egl Rui Ajax World
 
Java database programming with jdbc
Java database programming with jdbcJava database programming with jdbc
Java database programming with jdbc
 
010118565.pdf
010118565.pdf010118565.pdf
010118565.pdf
 
Java programming(unit 1)
Java programming(unit 1)Java programming(unit 1)
Java programming(unit 1)
 
VMworld 2013: VMware Mirage 201
VMworld 2013: VMware Mirage 201VMworld 2013: VMware Mirage 201
VMworld 2013: VMware Mirage 201
 
Mobile Application Development JEDI
Mobile Application Development JEDIMobile Application Development JEDI
Mobile Application Development JEDI
 
Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011
 
Java keynote preso
Java keynote presoJava keynote preso
Java keynote preso
 
Chapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side TechnologiesChapter 11:Understanding Client-Side Technologies
Chapter 11:Understanding Client-Side Technologies
 
Mobile Java
Mobile JavaMobile Java
Mobile Java
 
J2 Me
J2 MeJ2 Me
J2 Me
 
"JavaME + Android in action" CCT-CEJUG Dezembro 2008
"JavaME + Android in action" CCT-CEJUG Dezembro 2008"JavaME + Android in action" CCT-CEJUG Dezembro 2008
"JavaME + Android in action" CCT-CEJUG Dezembro 2008
 
JavaOne 2010 Keynote
JavaOne 2010 Keynote JavaOne 2010 Keynote
JavaOne 2010 Keynote
 

Mehr von Rohan Chandane

Agile Maturity Model, Certified Scrum Master!
Agile Maturity Model, Certified Scrum Master!Agile Maturity Model, Certified Scrum Master!
Agile Maturity Model, Certified Scrum Master!Rohan Chandane
 
Agile & Scrum, Certified Scrum Master! Crash Course
Agile & Scrum,  Certified Scrum Master! Crash CourseAgile & Scrum,  Certified Scrum Master! Crash Course
Agile & Scrum, Certified Scrum Master! Crash CourseRohan Chandane
 
An Introduction To Testing In AngularJS Applications
An Introduction To Testing In AngularJS Applications An Introduction To Testing In AngularJS Applications
An Introduction To Testing In AngularJS Applications Rohan Chandane
 
Agile :what i learnt so far
Agile :what i learnt so farAgile :what i learnt so far
Agile :what i learnt so farRohan Chandane
 
Sencha / ExtJS : Object Oriented JavaScript
Sencha / ExtJS : Object Oriented JavaScriptSencha / ExtJS : Object Oriented JavaScript
Sencha / ExtJS : Object Oriented JavaScriptRohan Chandane
 
TIBCO General Interface - CSS Guide
TIBCO General Interface - CSS GuideTIBCO General Interface - CSS Guide
TIBCO General Interface - CSS GuideRohan Chandane
 
Blogger's Park Presentation (Blogging)
Blogger's Park Presentation (Blogging)Blogger's Park Presentation (Blogging)
Blogger's Park Presentation (Blogging)Rohan Chandane
 

Mehr von Rohan Chandane (12)

Agile Maturity Model, Certified Scrum Master!
Agile Maturity Model, Certified Scrum Master!Agile Maturity Model, Certified Scrum Master!
Agile Maturity Model, Certified Scrum Master!
 
Agile & Scrum, Certified Scrum Master! Crash Course
Agile & Scrum,  Certified Scrum Master! Crash CourseAgile & Scrum,  Certified Scrum Master! Crash Course
Agile & Scrum, Certified Scrum Master! Crash Course
 
An Introduction To Testing In AngularJS Applications
An Introduction To Testing In AngularJS Applications An Introduction To Testing In AngularJS Applications
An Introduction To Testing In AngularJS Applications
 
Agile :what i learnt so far
Agile :what i learnt so farAgile :what i learnt so far
Agile :what i learnt so far
 
Backbone js
Backbone jsBackbone js
Backbone js
 
Node js
Node jsNode js
Node js
 
Sencha / ExtJS : Object Oriented JavaScript
Sencha / ExtJS : Object Oriented JavaScriptSencha / ExtJS : Object Oriented JavaScript
Sencha / ExtJS : Object Oriented JavaScript
 
TIBCO General Interface - CSS Guide
TIBCO General Interface - CSS GuideTIBCO General Interface - CSS Guide
TIBCO General Interface - CSS Guide
 
Blogger's Park Presentation (Blogging)
Blogger's Park Presentation (Blogging)Blogger's Park Presentation (Blogging)
Blogger's Park Presentation (Blogging)
 
Parsing XML in J2ME
Parsing XML in J2MEParsing XML in J2ME
Parsing XML in J2ME
 
J2ME RMS
J2ME RMSJ2ME RMS
J2ME RMS
 
J2ME IO Classes
J2ME IO ClassesJ2ME IO Classes
J2ME IO Classes
 

Kürzlich hochgeladen

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 

Kürzlich hochgeladen (20)

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

Java2 MicroEdition-J2ME

  • 1. Java 2 Micro Edition (J2ME) or Java ME Rohan Chandane rohan.chandane@indiatimes.com These notes are created by me, Rohan Chandane as learning material while pursuing MSc (CA) from SICSR. (CC) 2005-07
  • 2. Basics  Sun's version of Java aimed at machines  with limited hardware resources (PDAs, Cell Phones, Embedded devices)  with less memory (128KB of RAM)  with processors less powerful than desktop and server machines
  • 3. Continued…  A highly optimized Java runtime environment  The collection of virtual machines, APIs and related elements that provide Java to handheld and embedded computing devices
  • 4. Components of J2ME  There are different variation in devices in terms of  Memory  Processor  To support these differences, J2ME introduced the concept of  Configurations  Profiles  Optional Package
  • 5. Continued…  Configurations  Provide the base functionality  For a particular range of devices that share similar characteristics like  Memory  Network Connectivity  Two J2ME configurations  Connected Limited Device Configuration (CLDC)  Connected Device Configuration (CDC)
  • 6. Continued…  Profiles  Profiles refers to APIs for a specific domain  That sits on top of a given configuration  Providing  Specific features  Application life-cycle model  User interface  Capabilities  Persistent storage  Access to device
  • 7. Continued…  Each profile define particular device  Cell phones  PDAs  Microwave ovens, etc.  In short, Profile is minimum set of class libraries required for the particular type of device  Widely adopted profile  Mobile Information Device Profile (MIDP)
  • 8. Continued…  We can use more than one profile at a time  Provided that the virtual machine and device supports the functionality for the additional profile
  • 9. Continued…  Optional Package  Extend the J2ME platform by adding extra functionality  Offer standard APIs for using both existing and emerging technologies like  Database connectivity  Wireless messaging  Multimedia  3D graphics  Web Services
  • 11. Details about Configuration  Connected Limited Device Configuration (CLDC)  For small wireless devices with intermittent (periodic) network connections  Mobile phones  Personal digital assistants  Mobile Information Device Profile (MIDP), which is based on CLDC
  • 12. Continued…  Typical characteristics of a device that implements the CLDC  128 KB of memory for running Java programs  32 KB of memory for run time memory allocation  16-/32-bit RISC/CISC processor  A limited user interface  Runs on battery power  Some form of wireless network connection, low bandwidth
  • 13. Continued…  Support in CLDC  Support floating point math  CLDC 1.0 specification – does not support  CLDC 1.1 specification – does support
  • 14. Continued…  Connected Device Configuration (CDC)  For larger devices in terms of memory and processing power with robust network connections  Set-top boxes  Internet appliances  Embedded servers  Foundation Profile extends CDC  It provides core APIs shared with Java SE
  • 15. Continued…  Typical characteristics of a device that implements the CDC  512 kilobytes (minimum) memory for running Java programs  256 kilobytes (minimum) for run time memory allocation  Network connectivity, possibly persistent, and high-bandwidth
  • 16. Details about Profiles  Profiles have been defined for J2ME  Built upon CLDC  Mobile Information Device Profile (MIDP)  KJava  Built upon CDC  Foundation Profile  Personal Profile
  • 17. Continued…  Mobile Information Device Profile (MIDP)  APIs built on top of the CLDC configuration  Defines following APIs for cellular devices  User Interface Components  Input and Event handling  Persistent storage  Networking and timers  Common, industry-standard profile  Not dependent on a specific vendor
  • 18. Continued…  Versions of the MIDP specification  Version 1.0  Original specification  Version 2.0  Addressed many of the shortcomings  Backwards compatible with version 1.0
  • 19. Continued…  MIDP contains the following packages  Core CLDC packages  java.lang  java.io  java.util  MIDP-specific packages  javax.microedition.io  javax.microedition.lcdui  javax.microedition.midlet  javax.microedition.rms
  • 20. Continued…  KJava  Sun's proprietary profile  Built on top of the CLDC configuration  Contains a Sun-specific API  Which runs on the Palm OS  It is not a standard J2ME package  Main package is com.sun.kjava
  • 21. Continued…  Foundation Profile  Intended for embedded and headless devices  For devices that have no user interface  Routers  Gateway devices  There are other profiles, such as Personal Profile, that are intended to run on top of the Foundation profile
  • 22. Continued…  Personal Profile  Personal Profile is the JavaME replacement for PersonalJava  Defines a minimal set of user interface APIs
  • 23. Java editions & Applications
  • 24. JCP & JSR  Configurations and Profiles are defined by Java Community Process (JCP)  JCP - Open industry working groups utilizing Sun's Java Community Process Program  This program is formed by an expert group consisting of representatives from participating companies
  • 25. Continued…  In this way industries can decide for themselves what elements are necessary to provide a complete solution targeted at their industry  Specifications for J2SE, J2EE and J2ME are developed under the JCP
  • 26. Continued…  Specification begins life as a Java Specification Request (JSR)  JSR then passes through various stages in the JCP before it is finalized  Every JSR is assigned a number  J2ME specifications are commonly referred to by their JSR number
  • 27. K Virtual Machine (KVM)  For CDC  The virtual machine has the same specification as J2SE  That is Java Virtual Machine (JVM)  For CLDC  Sun has developed a reference implementation of a virtual machine, known as the K Virtual Machine  Simply known as KVM
  • 28. Continued…  The KVM is Sun's implementation of a JVM that fits the guidelines of the CLDC
  • 29. J2ME Architecture quot;Genericquot; J2ME architecture MID Profile architecture