/  5
 
Subject
: ITE 1: Mobile Programming
Instructor:
Sir K. Calpotura
Topic:
Module 1: Introduction to Mobile Application Development
Date:
06.21.10
A.The DiscussionINTRO: The Platform
-
The platform to use is J2ME ( Java 2 Micro Edition)
Programmer should know
the capabilities of the phone
Programmer should know
the architecture
Programmer should know
the Midlet life cycle
Programmer should know
configurations and profiles
-
Some requirements
MAIN1.CHARACTERISTICS OF MOBILE DEVICES
While high end phones today usually are quite big to accommodate touch screen, cameras and speakers, themore common low-end phones are usually only about 3 in. long. The norm is that mobile phones be small is sizeso that they are easier to carry around.
-
Small in size
Both primary and secondary memories are low.
The primary memory is volatile, or temporary storage. This means that when there is no power, all data in it(RAM) is lost.
The secondary memory is non-volatile, or more of a permanent storage. It houses and keeps data even when ithas no power.
The device's small size could be a major factor as to why it has limited memory.
-
Limited memory
My (aging) humble notebook computer has an Intel Pentium dual-core processor (1.46 GHz, 533 MHz FSB, 1 MBL2 cache).
I think 
this basically means that my processor(s) can perform 1.46 million calculations per second. TheFront-side bus (FSB) rating,
I think 
, refers to the speed of data transfer from the processor to and from the otherparts of the computer system. Cache memory ranks second in the hierarchy of memory in terms of speed, andstores frequently accessed data. So
I think 
a higher cache memory could also be a major factor in computer speed.
The preceding bullet contains some processor specs of a notebook that is about 10 in. x 14 in. However,manufacturers could only fit so much in devices with such small sizes.
Mobile phones' processors are significantly less powerful than, say, a notebook computer.
-
Limited processing power
Mobile devices are designed to conserve power because they run on a limited power supply (battery).
-
Low power consumption
These devices are carried along, by users. They're put inside bags, pouches, and even pockets. Therefore, theymust be able to withstand bumps, impacts, and the like.
-
Robust and reliable
These devices usually have low bandwidth. This means that the transfer of data is much slower than that of desktop or laptop counterparts.
-
Limited connectivity
My notebook, when starting up from a full system shut down, would take more than a minute to load all it'sservices.
My phone, however, requires only about 8 seconds for it to display the main interface, and about 2 seconds morefor it to be completely usable (access data stored on SIM: open phonebook, read inbox, etc.).
Consider also that most phones are kept on and seldom turned off. This characteristic sets these devices fromothers.
-
Short wake-up time
-
The mentioned characteristics could be both advantages or disadvantages.
-
J2ME
was designed with the capabilities of these devices in mind.
Introduction to Mobile Application Development 062110
Monday, June 21, 20107:49 PM
ITE 1 Page 1
 
2.J2ME OVERVIEWPlatformVirtualMachine
J2EEJVMJ2SEJVMJ2ME (high-end)JVMJ2ME (low-end)KVMJavaCardCardVM
-
JAVA Platorms and the Virtual Machines that they useJ2EE -Java 2 Platform, Enterprise Edition
J2SE -Java 2 Platform, Standard Edition
J2ME -Java 2 Platform, Micro Edition
JVM -Java Virtual Machine
KVM -Kilo Virtual Machine
-
Acronyms
-
A series of Java virtual machines, specifically designed for different types of devices
A group of libraries and APIs that can be run on the virtual machines, also known as configurations and profiles
Various tools for deployment and device configurationWhat J2ME defines
3.J2ME ARCHITECTURE
a.
Configuration
-
It defines the minimum environment for Java to execute
The subset of the Java programming language
The functionality of the Java Virtual Machine
The core platform libraries
The security and networking features
-
It defines the following:
This contains a full-featured Java virtual machine.
The device is powered by a 32-bit processor
The device has 2 MB or more of total memory available for Java. This includes both RAM and flashmemory or ROM
The device requires the full functionality of the Java 2 "Blue Book" virtual machine
The device has connectivity to some kind of network, often with a wireless, intermittent connectionand with limited (often 9600 bps or less) bandwidth
The device may have a user interface with some degree of sophistication, but a user interface is notmandatory
Resource requirements
 java.io
 java.lang
 java.lang.ref 
 java.lang.math
 java.net
 java.security
 java.security.cert
 java.text
 java.util
 java.util.jar
 java.util.zip
Resource packages
This provides a common foundation for connections like HTTP, Sockets and Datagram. Although notall connection types are required to be implemented by the MIDP devices, the extensible interfacehierarchy of the Generic Connection Framework makes generalization possible.
It includes the Generic Connection Framework
CDC -Connected Device Configuration
(high-end) 
Resource requirements
CLDC -Connected Limited Device Configuration
(low-end)
-
There are 2 standard configurations
ITE 1 Page 2
 
The device can have between 160 to 512 kilobytes of total memory available for the Java platform,including both RAM and flash memory or ROM
The device can have limited power, such as battery-powered operation
The device has connectivity to some kind of network, often with a wireless, intermittent connectionand with limited (often 9600 bps or less) bandwidth
The device may have a user interface of some degree of sophistication, but a user interface is notmandatory 
Java language and Virtual Machine features
Core libraries (java.lang.*, java.util.*)
Input/Output (java.io.*)
Security
Networking
Internationalization
It defines and addresses the following areas:
finalization of class instances
asynchronous exceptions
some error classes
user-defined class loaders
reflection
Java Native Interface (JNI)
thread groups and daemon threads
Some features from J2SE removed from the CLDC
Pre-verification:
done in the development machine, before installation on the device
Verify
(runtime)
:
done on-device during runtime and is performed by the KVM.
It requires that all classes pass a two-phase verification process.
DISCUSSION ENDED HERE. THE FOLLOWING POINTS ARE SUMMARIES OF THE PROVIDED HAND-OUT.
b.
Profiles
-
This is a set of APIs that reside on top of a configuration that offers the program access to device-specific capabilities.
-
These define libraries which include the user interface, networking and storage APIs. These libraries are important tomake effective applications.
This is designed to be used with the
CLDC
configuration.
Contains classes for user interface, persistence storage and networking
Small applications that run under the
MIDP
are called
MIDlets.
The MIDP
This is based on the
CLDC
configuration.
Provides user interface APIs and data storage APIs
The PDA Profile
Extends the APIs provided by the CDC, but does not provide any user APIs.
It is meant to serve as a foundation for other profiles.
The Foundation Profile
Extends the Foundation Profile to provide a graphical user interface (GUI) capable of running Java webapplets.
The Personal Profile
Extends the Foundation profile to provide RMI for devices
Meant to be used with the CDC/Foundation and not the CLDC/MIDP
The RMI Profile
-
There are 5 profiles
4.
More on
MIDP
-
MIDP
stands for
Mobile Information Device Profile
.
-
It builds on top of the CLDC Configuration.Screen size: 96 x 54
Display
Display depth: 1-bit
Pixel aspect ration: approximately 1:1
One-handed keyboard
Two-handed keyboard 
One or more of the following:
Input
-
Minimum requirements
ITE 1 Page 3

Share & Embed

More from this user

Add a Comment

Characters: ...