Download - Java me introduction
![Page 1: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/1.jpg)
13 April, 2010
Andreas JaklSenior Technical ConsultantForum Nokia
Java ME
![Page 2: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/2.jpg)
© 2010 Nokia
Java?• In numbers:
– > 6 Billion Java-enabled devices
– 2.6 Billion Java-enabled phones
(8 out of 10 shipped in 2008)
– 3.5 Billion Java Cards
– 20 Million Java set-top boxes
– 800 Million Java desktops
– 180 Operators deploying Java content
– 6 Million developers
13.04.2010 2
![Page 3: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/3.jpg)
13.04.2010 3© 2010 Nokia
Editions
Java 2
Platform, E
nterprise
Edition
(J2EE)
Java 2
Platform, St
andard
Edition
(J2SE)
Optional
Packages
Optional
Packages
CDC
Foundation
Profile
Personal Profile
Optional
Packages
Optional
Packages
MSA
CLDC Java Card
Personal
Basis
Profile
Servers & enterprise computers
Servers & personal
computers
High-end PDAs, TV set-top boxes, embedde
d devices
Mobile phones & entry-level PDAs
Smart cards
Java Platform, Micro Edition (Java ME)
JTWI
MIDP
MSA … Mobile Service Architecture (JSRs 248 and 249)
JTWI … Java Technology for the Wireless Industry, JSR 185
MIDP … Mobile Information Device ProfileCDC … Connected Device Configuration
CLDC … Connected Limited Device Configuration
![Page 4: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/4.jpg)
© 2010 Nokia
Java SE vs. Java ME• Java ME is mainly a subset of J2SE
– But different UI- and event handling functionality
– Less utility classes
(only Vector and Hashtable, no LinkedLists, …)
• Code runs on both platforms?
– general algorithms: yes
– But the whole application needs porting
13.04.2010 4
![Page 5: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/5.jpg)
13.04.2010 5© 2010 Nokia
Targets
+ RIM / Blackberry+ SonyEricsson+ Motorola
![Page 6: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/6.jpg)
© 2010 Nokia
Basic Terms – Configuration• Defines Java platform for different device classes
– CLDC
• Limited UI
• Low computing power,
• Limited connectivity
– CDC
• High bandwidth network connection
• larger memory requirements
13.04.2010 6
Currently used in most phones:CLDC 1.1
![Page 7: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/7.jpg)
© 2010 Nokia
Basic Terms – Profile • Extension and more detailed specification for a configuration
– Contains APIs for UI, event handling, data storage, networks, timers, …
– Minimum requirements for devices (screen size, input possibilities, ...)
• For mobile phones:
– Mobile Information Device Profile (MIDP)
– Currently used: MIDP 2.1
13.04.2010 7
![Page 8: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/8.jpg)
© 2010 Nokia
Basic Terms – JSR • Java Specification Request (JSR)
– Describe specifications and technologies
– Mobile space: APIs, standards
• Examples:
– JSR 82: Bluetooth APIs
– JSR 179: Location API
– JSR 184: Mobile 3D API
– JSR 226: Scalable 2D Vector Graphics API
13.04.2010 8
Tornado Mania! 3D
(Digital Chocolate)
RealReplay(Mopius)
![Page 9: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/9.jpg)
© 2010 Nokia
What JSRs could be required?• A mapping application could require:
– JSR 226 (Vector Graphics)
• Map visualization
– JSR 179 (Location)
• Where am I?
– JSR 172 (Web Services)
• Requesting data
– JSR 75 (File and PIM)
• Map an address
13.04.2010 9
Google Maps Mobile© Google
![Page 10: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/10.jpg)
13.04.2010 10© 2010 Nokia
What does my phone support?
http://www.forum.nokia.com/devices/
![Page 11: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/11.jpg)
© 2010 Nokia
Development – NetBeans IDE• Fully integrated solution
– Integrates all aspects of mobile
development
– Visual UI Designer
– Game Builder
– Localization, Preprocessing
– Web access
– Automated deployment
– Comes with generic emulator
• Maintained by Oracle (Sun)
– http://www.netbeans.org/
13.04.2010 11
NetBeans (+ Java ME module)
![Page 12: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/12.jpg)
© 2010 Nokia
Development – Eclipse IDE • Mobile Tools for Java (MTJ)
– Targets Java ME development
– Supports MIDlets
– Adds project type and Java ME perspective to Eclipse
– Templates for common projects (games, etc.)
– Localization, Preprocessing
– Creates .jad/.jar packages
– Originally based on EclipseME plug-in
• Pulsar
– Combined tools set – includes Eclipse, MTJ and other tools
– http://eclipse.org/pulsar/
13.04.2010 12
![Page 13: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/13.jpg)
© 2010 Nokia
SDKs• Device vendor specific SDKs
– Simulate target more accurately
– Support proprietary APIs
– Include device skins
• Generic SDK from Sun
– Fine enough for initial development
– http://java.sun.com/javame/downloads/sdk30.jsp
13.04.2010 13
![Page 14: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/14.jpg)
13.04.2010 14© 2010 Nokia
Deployment Process
Source code (.java)
Compile & Preverify
Packaging
.jar/.jad-file(MIDlet Suite)
![Page 15: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/15.jpg)
© 2010 Nokia
Future of Java ME• Roadmap
– Nokia makes its Java ME implementation open source
• Contribution to Symbian Foundation
– Next version: Java Runtime 2.0 (JRT)
• Faster startup
• Easier installation
• Beta: http://betalabs.nokia.com/apps/nokia-java-runtime-20-for-s60
– Future
• Migration to Qt based UI ongoing
• Hardware acceleration, haptics, etc.
– http://blogs.forum.nokia.com/blog/java-runtime-for-s60-blog
13.04.2010 16
![Page 16: Java me introduction](https://reader034.vdocuments.mx/reader034/viewer/2022051610/548f3860b4795982638b4d2c/html5/thumbnails/16.jpg)
Thank You.