smi introduction to javame frameworks draft

14
Introduction to Java ME Frameworks. Version 0.1, Draft INFO

Upload: rajasekar

Post on 22-Nov-2014

60 views

Category:

Documents


16 download

TRANSCRIPT

Page 1: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks.

Version 0.1, Draft 

INFO  

Page 2: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

2

COPYRIGHT  Samsung Electronics Co. Ltd.

This material is copyrighted by Samsung Electronics. Any unauthorized reproductions,

use or disclosure of this material, or any part thereof, is strictly prohibited and is a

violation under the Copyright Law. Samsung Electronics reserves the right to make

changes in specifications at any time and without notice. The information furnished by

Samsung Electronics in this material is believed to be accurate and reliable, but is not

warranted true in all cases.

 Trademarks and Service Marks

The Samsung Logo is the trademark of Samsung Electronics. Java is the trademark of

Sun Microsystems.

All other company and product names may be trademarks of the respective companies

with which they are associated.

Page 3: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

3

About This Document

This document introduces you to the various Java ME frameworks available today for the

development of Java ME application.

Scope  

This document is intended for MIDP developers wishing to develop Java ME based mobile

applications using Java ME frameworks. To know more about Java ME basics and Java

programming language, refer to the Knowledge Base under Samsung Mobile Innovator

(SMI).

 http://innovator.samsungmobile.com/platform.main.do?platformId=3                     

        

Page 4: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

4

 

Table of Contents  Introduction........................................................................................................ 5

Java ME Frameworks......................................................................................... 6

LWUIT ............................................................................................................ 6

TWUIK............................................................................................................ 6

PAX Java ME Framework............................................................................... 6

J2ME Polish..................................................................................................... 7

TinyLine .......................................................................................................... 8

OpenBaseMovil ............................................................................................... 8

Kuix ................................................................................................................. 8

KUI .................................................................................................................. 9

J2ME GUI........................................................................................................ 9

Flemil............................................................................................................. 10

Apime ............................................................................................................ 10

TagsMe .......................................................................................................... 10

Nextel's Open Source J2ME Toolkits............................................................ 11

Fire................................................................................................................. 11

LwVCL.......................................................................................................... 12

J4ME.............................................................................................................. 12

jMobileCore................................................................................................... 12

Mewt .............................................................................................................. 13

MWT (Micro Window Toolkit)..................................................................... 13

Swing ME ...................................................................................................... 13

Thinlet............................................................................................................ 14

Synclast UI API ............................................................................................. 14

 

 

 

Page 5: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

5

Introduction Java ME is a powerful development platform for developing applications for mobile

devices. Java ME is widely supported across all major handset manufacturers’ platforms.

There are two issues that need to be tackle for development of good consistent rich UI

applications.

1. Consistent look and feel.

2. Portability across screen size.

Java ME has very few or limited GUI components for developing rich UI Applications.

Since Java ME was targeted for low end devices, it lacks many features and GUI

components that are normally available in standard Java, for example, themes,

animations, layouts, scaling of images etc.

Java ME offers two UI packages namely high level and low level for developing

applications.

With High level UI packages, components are few and the look and feel of these

components varies across the platforms.

With low level UI packages, one can add additional components by implementing it from

scratch. Using Low level UI, developers need to design their components and needs to

take care of GUI look and feel on devices with different screen sizes.

To overcome all such issues, there are several free and commercial libraries /

frameworks available that takes care of the above issues.

Frameworks provide more functionality, rich look and feel and assures rapid development

of Java ME applications. In this document we will list down several UI libraries available

today for Java ME.

The frameworks listed here are not based on any criteria and are mostly available.

Following frameworks are listed in random order.

Page 6: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

6

Java ME Frameworks

LWUIT

LWUIT is a UI library that is bundled together with applications and helps content

developers in creating compelling and consistent Java ME applications. LWUIT supports

visual components and other UI goodies such as theming, transitions, animation and

more.

HOMEPAGE

https://lwuit.dev.java.net/

LICENSE

http://lwuit.blogspot.com/2008/05/licensing-terms-of-lwuit.html

TWUIK

TWUIK™ Rich Media Engine (RME) is an UI technology that brings dazzling graphics,

vibrant animation, engaging rich-media user experience and advanced interactivity to

mobile application development for seamless deployment across an ever-wider range of

supported J2ME and BlackBerry devices.

HOMEPAGE

http://www.tricastmedia.com/twuik/

LICENSE

http://www.tricastmedia.com/twuik/?p=9

PAX Java ME Framework

The library has been designed to function much like existing Swing components so Java

developers will feel very comfortable using the API programmatically.Library has an

extremely flexible layout manager which has support for a variety of different layout

styles and also allows developers to combine different layout styles on the same screen.

Library has wide selection of GUI components which can act as either widgets or

containers and be added to each other at will based on standard component tree

Page 7: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

7

architecture. Both the layout styles and GUI components can be easily skinned to look

and feel exactly how you want.

HOMEPAGE

http://www.paxmodept.com/paxmodept/products.htm

LICENSE

Commercial

J2ME Polish

J2ME Polish is a suite of tools and technologies aimed at mobile developers and

companies within the mobile space.

Main features of J2ME Polish include:

• Lush: A UI toolkit that is highly flexible and that can be designed outside of the

application's source code.

• Janus: A toolset for porting mobile application to different handsets and different

technology platforms.

• Touch: Technology for accessing server side content and communicating with

remote parties.

• Trunk: A persistence solution that allows you to load and save complex data with

a single line of code.

• Marjory: Our community maintained device database..

HOMEPAGE

http://www.j2mepolish.org/cms/topsection/home.html

LICENSE

http://www.j2mepolish.org/cms/leftsection/licensing.html

Page 8: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

8

TinyLine

TinyLine 2D implements a mobile 2D graphics engine for Java platform (J2ME

CLDC/MIDP, CDC/PP, J2SE). Developers are easily able to incorporate high quality,

scalable and platform-independent graphics into their Java applications.

HOMEPAGE

http://www.tinyline.com/index.html

LICENSE

http://www.tinyline.com/products.html

OpenBaseMovil

BaseMovil is a framework for fast development of J2ME applications: a powerful J2ME

database engine, a scripting engine and UI toolkit which is fully integrated with both and

allows xml view definition. The framework handles device differences/bugs.

HOMEPAGE

http://sourceforge.net/projects/openbasemovil/

http://www.openbasemovil.org

LICENSE

http://www.openbasemovil.org/licensing/

Kuix

Kuix (Kalmeo User Interface extensions) is a development framework that allows creating

high end J2ME applications. It provides most graphical elements (buttons, text fields,

lists, menus, etc.) needed to create advanced user graphical interfaces and uses an

XML/CSS approach to describe the screens and the user actions in the application.

HOMEPAGE

http://www.kalmeo.org/projects/kuix

Page 9: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

9

LICENSE

http://www.kalmeo.org/projects/kuix/license

KUI

kUI is a Canvas based replacement for the high level LCDUI classes.

• kUI can be styled to meet your own branding requirements

• kUI avoids problems with implicit close commands

• kUI does not require a preprocessing step

• kUI offers a consistent behavior and user interface experience among different

devices, simplifying your development and documentation process.

HOMEPAGE

http://www.kobjects.org/kui/index.php

LICENSE

http://www.kobjects.org/kui/license/index.php

J2ME GUI

J2ME GUI is Garcer's flagship product. It allows mobile developers to design Java

applications with rich flexible user interfaces that can usually only be found in desktop

development environments.

J2ME GUI was specifically developed with low-end phones in mind, providing a

responsive interface with a small memory footprint.

HOMEPAGE

http://www.garcer.com/

LICENSE

https://www.garcer.com/eula_j2megui.aspx

Page 10: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

10

Flemil

Flemil is a mobile application user interface creation library for Java ME (J2ME) devices.

Flemil stands for Flexible Mobile Interface Library. As the name suggests Flemil provides

the application developer as well as the user with flexibility to control how their

application look like.

HOMEPAGE

http://flemil.com/main.jsp

LICENSE

http://flemil.com/flemilcorelicensing.jsp

http://flemil.com/pluginslicensing.jsp

http://flemil.com/applicationslicensing.jsp

Apime Apime is a framework to offer more functionality to J2ME/MIDP. The core is the user

interface, with basics components to make applications with swing structure.

Also it includes classes for file manage and customization (skins, internationalization,

keyboards for different languages and mobiles.

HOMEPAGE

http://www.java4ever.com/index.php?section=j2me&project=apime&menu=main&lang=

_en

LICENSE

http://www.java4ever.com/index.php?section=j2me&project=apime&menu=download&l

ang=_en

TagsMe

Build cross compatible mobile applications that are fully functional Java ME mobile

applications are using TagsMe™ GUI within a few hours. Using TagsMe XML language

and a very simple script language, developer can design and develop professional looking

Page 11: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

11

mobile applications - including menu structures, images, text, links, animations, etc; in

fact, everything that a normal website would include.

HOMEPAGE

http://www.tagsme.com/index.php

LICENSE

http://shop.tagsme.com/index.php?&vmcchk=1&option=com_virtuemart&Itemid=70

Nextel's Open Source J2ME Toolkits

The Nextel J2ME User Interface Toolkit provides a core set of user interface components

and permits the development of custom components. Developers can easily create UIs

for J2ME-enabled mobile handsets that meet their functional and aesthetic needs.

HOMEPAGE

http://sourceforge.net/projects/nextel/

http://nextel.sourceforge.net/

Fire

Fire is a fast, themable UI toolkit and xHTML/CSS renderer for mobile application and

game development. It is an eye-candy alternative to the standard midp2 UI components

and unlike them it produces a superior UI result on all mobile devices!

HOMEPAGE

http://sourceforge.net/projects/fire-j2me/

LICENSE

http://sourceforge.net/projects/fire-j2me/develop

Page 12: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

12

LwVCL

LwVCL supports both Java (J2SE/J2ME Personal Profile) and .NET platforms. For more

information on LwVCL please visit the LwVCL homepage.

HOMEPAGE

http://www.lwvcl.com/j2me.php

LICENSE

http://www.lwvcl.com/licensing.php

J4ME

J4ME is an open source library to help build J2ME applications. It solves many of J2ME's

shortcomings including: User Interfaces, Logging, GPS and various other utility classes

and methods.

HOMEPAGE

http://code.google.com/p/j4me/

LICENSE

Apache License 2.0

jMobileCore

jMobileCore library is powerful tool for creating J2ME applications. jMobileCore provides

support for developing compact and rich Canvas-based GUI, fast data access, reliable

communications and simplifies creation of multithreading midlet applications.

HOMEPAGE

http://jmobilecore.sourceforge.net/

LICENSE

http://sourceforge.net/projects/jmobilecore/develop

Page 13: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

13

Mewt

J2ME Widget Toolkit and advanced widget toolkit for J2ME devices, supporting cross-

platform components such as tables, trees, graphical buttons, theming etc.

HOMEPAGE

http://sourceforge.net/projects/mewt/

LICENSE

http://sourceforge.net/projects/mewt/develop

MWT (Micro Window Toolkit)

Inspired by its UI big brothers as AWT, Swing and SWT, MWT comes into the scene

providing an UI framework designed and optimized for small devices.

HOMEPAGE

http://j2me-mwt.sourceforge.net/index.html

LICENSE

http://j2me-mwt.sourceforge.net/license.html

Swing ME

A Java ME (J2ME) implementation of Swing GUI, with Layouts, Borders, Renderers and

lots of components including inline Text Field, Buttons, Window, Tabbed Pane and many

others. ALL visual and behavioral aspects can be fully customized of ANY component.

HOMEPAGE

http://swingme.sourceforge.net/

LICENSE

LGPL

Page 14: SMI Introduction to JavaME Frameworks Draft

Introduction to Java ME Frameworks

14

Thinlet

Thinlet is a GUI toolkit, a single Java class, parses the hierarchy and properties of the

GUI, handles user interaction, and calls business logic. Separates the graphic

presentation (described in an XML file) and the application methods (written as Java

code).

HOMEPAGE

http://thinlet.sourceforge.net/home.html

LICENSE

LGPL License. http://thinlet.sourceforge.net/home.html

Synclast UI API

The Synclast UI API is an extensible toolkit for creating colorful custom user interfaces on

Java-enabled handheld devices (Java 2 Micro Edition Mobile Information Device Profile)

in an intuitive yet efficient manner. It is compatible with any MIDP 1.0 device, and is fully

open source.

HOMEPAGE

http://sourceforge.net/projects/synclast/

LICENSE

http://sourceforge.net/projects/synclast/develop