Top Banner
Out Line >>Introduction of mobile Technology >>Software Technology for Mobile device >> Java 2 Platforms >>J2ME Introduction -- Architecture -- Configuration(CLDC,CDC) -- Profile(MIDP,PDAP –CLDC & FP,PBP,PP- CDC ) -- Optional Packages(RMI-FP , Bluetooth- CLDC, JDBC- FP) >> Setting up J2ME Development Environment
28
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Session1  j2me introduction

Out Line

>>Introduction of mobile Technology>>Software Technology for Mobile device>> Java 2 Platforms>>J2ME Introduction

-- Architecture -- Configuration(CLDC,CDC) -- Profile(MIDP,PDAP –CLDC & FP,PBP,PP-CDC ) -- Optional Packages(RMI-FP , Bluetooth-CLDC, JDBC- FP)>> Setting up J2ME Development Environment

Page 2: Session1  j2me introduction

Introduction of mobile Technology

>> The goals of mobile Technology-- Connecting people -- Information sharing-- Internet access and -- Entertainment

>> Includes-- Mobile phone, PDAs, Note book, Set top box

With the most important words “at any time any where”

Page 3: Session1  j2me introduction

Introduction of mobile Technology(Cont.,)

>> The internet scenario of retrieving information in a wireless network

We

b Se

rvers

InternetWireless Network

Base Station

Request :

Response :

Page 4: Session1  j2me introduction

Introduction of mobile Technology(Cont.,)

>> Mobile Networking

-- GSM,GPRS,EDGE>> Generation

-- 1G,2G,2.5G,2.75G,3G and 4G.-- IEEE802.11-- Infrared and Bluetooth

Page 5: Session1  j2me introduction

Introduction of mobile Technology(Cont.,)

Mobile networking

Short Form Cellular Type Data Transfer speed

GSM Global system for mobile communication

Digital cellular system

9.6 kbps

EDGE Enhanced Data GSM Environment

Faster version of GSM wireless service

384 kbps

GPRS General Packet Radio Service

Its an standard for wireless communication

115 kbps

Page 6: Session1  j2me introduction

Introduction of mobile Technology(Cont.,)

Generation Technology Description

First generation(1G)

Analog system designed for only voice communication.

-

Second Generation(2G)

Use GSM network for voice communication

-

2.5G and 2.75 G GPRS-2.5GEDGE-2.75G

It allows higher rate of data transmission

Third Generation(3G)

UMTS- EuropeCDMA2000- North America and Part of Asia

Higher data transmission (2Mbps).allow video conference

Fourth Generation(4G)

Combined the wireless local area network and 3G

-

Page 7: Session1  j2me introduction

Software technology for mobile device

>> Mobile application development software package-- Windows mobile-- Symbian-- Embedded visual C++ and .Net-- J2ME

>> Windows Mobile-- Windows Mobile is Microsoft's software platform for Pocket PCs and Smart phones. Windows Mobile extends the familiarity of the Windows desktop to personal devices.-- Windows Powered mobile devices include Pocket PC, Pocket PC Phone Edition, Smartphone, and Handheld PC

Page 8: Session1  j2me introduction

Software technology for mobile device(cont.,)

>> Symbian

-- OS for mobile device-- It provide low level function for application development.

>> Embedded Visual C++ and .net

-- It is a programming language -- Allow programmer to develop application on windows mobile platform

Page 9: Session1  j2me introduction

Java 2 Platform>> Java 2 platform includes three edition of java

-- Java 2 Standard Edition(J2SE)-- Java 2 Enterprise Edition(J2EE)-- Java 2 Micro Edition(J2ME)

Java2 Standard Edition

(J2SE)

Java2 Enterprise Edition

(J2EE)

Java2 Micro Edition

(J2ME)

Java 2 Platform

Standard desktop &Workstation Applications

Heavy duty serversystems

Small & memory Constrained devices

Page 10: Session1  j2me introduction

Java 2 Platform(Cont.,)

>>J2SE

-- Provide a complete environment for application development on desktop and server.-- Its foundation of J2EE.

>>J2EE

-- Targeted for business use-- Large scale of the system which may contain tens of servers millions of users-- Web bases services-- Machines are high performance

Page 11: Session1  j2me introduction

Java 2 Platform(Cont.,)

>> J2ME-- used for less memory and low processing power device .-- Java platform for small devices.-- For programming the mobile devices.-- Using J2ME we can develop the application for small devices ie., Extremely limited memory , small screen size , alternative input method, and slow process.

Page 12: Session1  j2me introduction

J2ME introduction >> what is J2ME

• Java platform for small devices

• A subset of Java 2 Standard Edition

• For programming the palm

• For programming the mobile device (e.g mobile phones or WinCE…)

CDC (Connected Device Configuration)CLDC (Connected Limited Device Configuration)

Page 13: Session1  j2me introduction

J2ME introduction (cont.,)

>> Different Layers of J2ME MIDP Profile OEM

MID Profile

CLDC

OEMAPIs

ConfigurationLayer

ProfilesLayer

KVM

Page 14: Session1  j2me introduction

J2ME Architecture

>> To increase the flexibility design , J2ME consists of four distinct layers-- Kilo byte virtual machine-- Configurations-- Profiles -- Optional packages.

Page 15: Session1  j2me introduction

Kilo Byte Virtual Machine(KVM Archi.,)

>> Its used for small program>> Its sub set of JVM>> A pool for running java code on the device>> 40-80 kilo byte in size>>For devices with 160 KB of memory and 16 or 32-bit

RISC/CISC microprocessors

Page 16: Session1  j2me introduction

Configurations (KVM Archi.,)

>> Definition

Defines the minimum Java technology for a broad range of devices with similar capabilities

>>A configuration defines the minimum set of libraries and VM capabilities

>>Devices have similar processing and power and memory constraints

>> There are two type of configuration-- CLDC -Connected limited device configuration-- CDC – Connected device configuration

Page 17: Session1  j2me introduction

CLDC (Connected Limited Device Configuration)

>> Targeted at devices with:– 160KB to 512KB total memory available for Java

technology– Limited power (battery), connectivity (often intermittent),

UI (small screen)>>Addresses

– Java language and virtual machine features– Core Java Libraries– Input/Output– Networking– Security

•Core java.* libraries•Additional I/O and•networking libs•Security features•Internationalization

Page 18: Session1  j2me introduction

CLDC (Connected Limited Device Configuration)>>Not Addresses (but in MIDP)

– User Interface functionality– Event handling– High-Level application model– Application life-cycle management

>>CLDC API--io– InputStream, OutputStream, Reader, Writer

• lang - No floating point support• util

– Calendar, Date, Hashtable, Random, Stack, TimeZone, Vector, Enumeration

• javax.microedition.io– Connection, Datagram, InputConnection,

OutputConnection, Connector

Page 19: Session1  j2me introduction

CLDC (Connected Limited Device Configuration)

>>Only CLDC is not enough for building applications>>CLDC is the base for building the above profiles>>It separates the machine dependent issues from the

applications>>There are two version of CLDC

– CLDC 1.0– CLDC 1.1

>> Main differences between 1.0 and 1.1 are– Floating point is added in 1.1– More Date related classes is added in 1.1– The minimum memory budget has been raised from 160 to 192 kilobytes

>>Today, most mobile phones only support 1.0 version

Page 20: Session1  j2me introduction

Connected Device Configuration

>> Targeted for devices that have – 2 MB or more total available memory– Memory dedicated to J2ME environment– More than 2MB ROM/Flash– More than 512 KB RAM– Network connectivity

>> Full Java 2 Virtual Machine specification

Page 21: Session1  j2me introduction

Connected Device Configuration

>> CDC uses– Wireless communicators– High-end PDAs– TV set-top boxes– Gateways– Automotive entertainment and navigation systems– Telecomm/Networking Equipment– Industrial Controllers

• Full-featured Java 2 platform runs on small devices

Page 22: Session1  j2me introduction

J2ME Arch., Profile

>> A profiles layer is a set of Java Based API that extend the J2ME definition

>> UI and presentation capabilities are generally defined at this layer

>> EX: CLDC => MIDP (Mobile Information Device Profile)

CDC => Personal ProfileCDC => Foundation Profile

Page 23: Session1  j2me introduction

J2ME Arch., Mobile Information Device Profile

>> Is a set of APIs that allow developers to control mobile device-specific problems– i.e. user interfaces, local storage and client application

lifecycles etc.>> MIDlets minimum requirements

– 96 x 54 pixels mono screen– two-way wireless network– input device (i.e. keypad)– 128 KB ROM for CLDC/MIDP class and another 32 KB RAM

for the KVM>> Midlets are the most important and popular

applications in the J2ME family.

Page 24: Session1  j2me introduction

J2ME Archi., MIDP

Page 25: Session1  j2me introduction

MIDlet Programming

• Any MIDP application must extends MIDlet • This is the MIDP equivalent of an applet,

where starting/stopping is under the control of the environment

• Like Java applets, MIDlets have an application life cycle while running on a mobile device.

Page 26: Session1  j2me introduction

MIDlet Transition States• Specifically, a MIDlet can be in one of three

states as shown:

Why do we need a Paused state?

Page 27: Session1  j2me introduction

MIDP - API

• javax.microedition.midlet– (application management)

• javax.microedition.lcdui– High-level development

• Form, TextBox, List, Alert– Low-level development

• Canvas: Game applications will likely make heavy use of the

• javax.microedition.rms– RecordStore

• A record store consists of a collection of records which will remain persistent across multiple invocations of the MIDlet

Page 28: Session1  j2me introduction

MIDP API Tree

View

Displayable

FormText Box ListAlert Canvas

Command

Date Field

Image

Text FieldString Item

Ticker

Choice Group