01 dmaj session 01a

Upload: debajyoti-kar

Post on 07-Apr-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 01 DMAJ Session 01A

    1/22

    Slide 1 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    The availability of wireless Internet services on mobile

    devices is making communication possible anywhere and at

    anytime.

    Java offers a flexible and robust platform for mobile

    application development with enterprise-class performance,reliability, and value.

    Java Micro Edition (Java ME) allows developers to use the

    Sun Java wireless toolkit to create applications and

    programs for wireless and mobile devices.

    The Developing Mobile Applications Using Java courseenables you to develop, debug, test, and securely deploy

    mobile applications by using Java ME.

    Rationale

  • 8/6/2019 01 DMAJ Session 01A

    2/22

  • 8/6/2019 01 DMAJ Session 01A

    3/22

    Slide 3 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Introduction to Mobile Application Development

    Mobile applications are developed for handheld devices,

    such as mobile phones and Personal Digital Assistants

    (PDAs).

    At present, several platforms such as Java Micro Edition

    (Java ME), Symbian, Binary Runtime environment forWireless (BREW), Microsoft .NET Compact Framework,

    Objective C, and Python are available for developing mobile

    applications.

  • 8/6/2019 01 DMAJ Session 01A

    4/22

    Slide 4 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Introduction to Mobile Application Development (Contd.)

    Java ME:

    Is also known as Java 2 Micro Edition (J2ME).

    Is a Java-based platform developed by Sun Microsystems.

    Provides an environment for developing applications for

    wireless mobile devices and embedded devices.Includes flexible User Interfaces (UIs), a strong security model,

    and built-in network protocols that can be used to create rich

    and powerful wireless applications for mobile devices.

  • 8/6/2019 01 DMAJ Session 01A

    5/22

  • 8/6/2019 01 DMAJ Session 01A

    6/22

    Slide 6 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Introducing Java ME

    Sun Microsystems have released several versions of Java,

    and they have maintained a consistent architecture across

    these versions.

    The three Java editions are:

    Java Standard Edition (Java SE)Java Enterprise Edition (Java EE)

    Java ME

  • 8/6/2019 01 DMAJ Session 01A

    7/22

    Slide 7 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Introducing Java ME (Contd.)

    Java ME:

    Shares some classes with Java SE and Java EE.

    Contains its own classes, called Profile Application Program

    Interfaces (Profile APIs) that are not a part of Java SE and

    Java EE APIs.The following figure shows the library sets of the three Java

    editions in terms of a set diagram.

  • 8/6/2019 01 DMAJ Session 01A

    8/22

  • 8/6/2019 01 DMAJ Session 01A

    9/22

    Slide 9 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Understanding the Java ME Architecture

    The micro world

    includes a wide range

    of devices with

    different capabilities.

    Is it possible to

    create a single

    software product tosuit all of them?

  • 8/6/2019 01 DMAJ Session 01A

    10/22

    Slide 10 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Understanding the Java ME Architecture (Contd.)

    No, it is not possible to

    create a single software

    product to suit all of them.

  • 8/6/2019 01 DMAJ Session 01A

    11/22

    Slide 11 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Understanding the Java ME Architecture (Contd.)

    Java ME is designed as a

    collection of specifications that

    define a set of platforms.

    Each of these platforms is

    suitable for a subset of the

    collection of devices that fall

    within its scope.

    This subset for a particular

    collection of devices is defined

    by a configuration and one or

    more profiles.

    The configuration and profile,

    together, provide APIs to

    develop applications for this

    collection of devices.

  • 8/6/2019 01 DMAJ Session 01A

    12/22

    Slide 12 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Understanding the Java ME Architecture (Contd.)

    Describing Java ME configurations:

    A configuration is a specification that defines a software

    environment for a range of devices defined by a set of

    characteristics that the specification relies upon.

    The characteristics that are defined for the range of devicesmay be the:

    Type and amount of memory available.

    Type of processor and its speed.

    Type of network connections available to the devices.

    A configuration:

    Represents the minimum platform for the devices.Provides the basic set of classes and libraries required to support

    devices with similar memory and processing requirements.

  • 8/6/2019 01 DMAJ Session 01A

    13/22

    Slide 13 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Understanding the Java ME Architecture (Contd.)

    The Java ME architecture is based on two types of

    configurations:

    Connected Device Configuration (CDC)

    Connected Limited Device Configuration (CLDC)

    CLDC defines a basic set of classes and libraries forresource-restricted devices such as mobile phones and

    PDAs.

    CDC defines a basic set of classes and libraries for devices

    such as set-top boxes.

  • 8/6/2019 01 DMAJ Session 01A

    14/22

    Slide 14 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Understanding the Java ME Architecture (Contd.)

    Describing Java ME Profiles:

    A profile provides additional classes for a certain range of

    devices within the framework of a chosen configuration.

    The classes provided by the profile are suitable to a particular

    family of devices within a given configuration.Profiles help in managing device-specific features, such as

    creating Graphical User Interfaces (GUIs), and managing data

    storage and network connections.

    The Mobile Information Device Profile (MIDP) is a

    CLDC-based profile that defines class libraries to develop

    applications for network-connectable mobile devices.The Foundation profile is a CDC-based profile.

  • 8/6/2019 01 DMAJ Session 01A

    15/22

    Slide 15 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Understanding the Java ME Architecture (Contd.)

    Describing the Java ME Architecture:

    Java ME uses a layered architecture, which defines the

    following major categories of components:

    Configuration layer: This layer includes a Kilobytes Virtual

    Machine (KVM) or C Virtual Machine (CVM), which is similar to the

    Java Virtual Machine (JVM).

    Profile layer: This layer adds classes to the chosen configuration

    to support device specific functionalities.

    The Java ME layered architecture also includes an additional

    layer of optional packages.

    Optional packages:Are always used in combination with a configuration or a profile.

    Add standard APIs to develop applications that provide

    functionality, such as ability to send messages and play audio

    content.

  • 8/6/2019 01 DMAJ Session 01A

    16/22

    Slide 16 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Understanding the Java ME Architecture (Contd.)

    Example for optional package:

    Wireless Messaging API (WMA) is an optional package that can

    be used to develop applications for sending and receiving

    messages through mobile devices having Short Messaging

    Service (SMS) capabilities.

    The WMA package can be used with CLDC and MIDP, or withsome other configuration and profile.

  • 8/6/2019 01 DMAJ Session 01A

    17/22

    Slide 17 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Understanding the Java ME Architecture (Contd.)

    The following figure depicts the layered architecture of Java

    ME for the CLDC configuration.

  • 8/6/2019 01 DMAJ Session 01A

    18/22

    Slide 18 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Steve is a mobile application developer with Info Super

    Corp. He is assigned the task to develop a game application

    for mobile devices. Steve needs to add GUI to the game

    application. Which layer of Java ME architecture can

    provide him the class libraries to perform the required task?

    Just a Minute

    Solution:

    Profile layer

  • 8/6/2019 01 DMAJ Session 01A

    19/22

    Slide 19 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    Features of Java ME

    The features of the Java ME platform are:

    Security

    Portability

    Dynamic content delivery

    Enhanced UI and Interactive contentOffline access

    Compatibility with Java SE and Java EE platforms

  • 8/6/2019 01 DMAJ Session 01A

    20/22

    Slide 20 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    In this session, you learned that:

    Java ME provides an environment for developing applications

    for wireless mobile devices, such as mobile phones and PDAs,

    and embedded devices, such as set-top boxes and printers.

    The Java ME platform includes flexible UIs, a strong securitymodel, and built-in network protocols that can be used to

    create rich and powerful wireless applications for mobile

    devices.

    The Java ME architecture is designed for small devices that

    have common hardware and software characteristics. Some of

    these characteristics are:Limited memory

    Limited processing

    Limited display

    Limited input methods

    Limited networking capabilities

    Summary

  • 8/6/2019 01 DMAJ Session 01A

    21/22

    Slide 21 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    A configuration and a profile, together, provide APIs to develop

    mobile applications.

    A configuration is a specification that defines the software

    environment for mobile devices.

    The two types of configurations in Java ME are CDC and

    CLDC.

    The MIDP is a commonly used Java ME profile for CLDC.

    Java ME uses a layered architecture, which defines the

    following major categories of components:

    Configuration layer

    Profile layerThe Java ME layered architecture also includes an additional

    layer of optional packages, which is always used in

    combination with a configuration or a profile.

    Summary (Contd.)

  • 8/6/2019 01 DMAJ Session 01A

    22/22

    Slide 22 of 22Ver. 1.0

    Developing Mobile Applications Using Java

    The features of the Java ME platform are:

    Profile layer

    Security

    Portability

    Dynamic content delivery

    Enhanced UI and Interactive content

    Offline access

    Compatibility with Java SE and Java EE platforms

    Summary (Contd.)