You Are Here:

Community: Blogs

Maximiliano Firtman's Forum Nokia Blog

A Flash Lite alternative in Java ME?

firt | 31 October, 2006 22:49

Sun Microsystems and Laszlo Systems, announced the code name Orbit Project. This project will allow open source framework OpenLaszlo to generate Java ME midlets without Java programming. Will it be the Flash alternative in Java platform for mobiles?


OpenLaszlo is an open source framework to develop Rich Internet Applications using a declarative XML file (called LZX) and JavaScript language (ECMAScript, similar to ActionScript too). Up to the last stable version (3.3), this framework compile to Flash SWF format for the web. Next version, OpenLaszlo 4.0 "Legals", in preview version 4 up today, can export the same project to other "engines", like AJAX-DHTML. Orbit will add support to compile to Java ME applications (JAD & JAR?).


I've worked with OpenLaszlo, so I already know the platform... I'm teaching this platform in presencial and eLearning way (in Spanish, I'm sorry). It's flexible, free, it can work over any web technology, it can make "less-code" cool animations and effects easily, and it reads XML and bind the data to visual controls. By the other side, there aren't books available about this platform, help files are a bit confusing sometimes and the only IDE available is an Eclipse plugin with too many bugs, without advanced visual or drag & drop features.

 

After the announcement, we have many question unanswered, like: will it compile MIDP 2.0 applications? Will it need any API like SVG in the phone? What Laszlo features will be available in the Java ME runtime? They announced that in december the first working demo will be available.


"Now with further extension to support the Java ME platform, OpenLaszlo will offer an unprecedented level of development portability and flexibility across a wide variety of Java technology-based phones, television set-top boxes, and other connected devices. Support for OpenLaszlo applications further enhances one of the key strengths of the Java platform – the ability to support development environments and authoring tools targeting a broad spectrum of developer skills and preferences.", OpenLaszlo team said.


We know that Flash is a powerful Java competitor in mobile multimedia applications development and that's because Java needs to evolve. I think that Sun found a solution to offer rapid rich and multimedia application development easier over Java ME platform.

 

If OpenLaszlo can offer a better IDE to work and more organized documentation in the future, it can be an alternative to Flash Lite. What do you think?

 

For more information, visit www.openlaszlo.org/orbit

Search Engine for Mobile Developers

firt | 29 October, 2006 06:19

I've just published a new site, a mobile development search engine. The idea is that you can make a search restricted only to sites that has information about Java ME, Symbian, Flash Lite, and other mobile technologies.

 

The site is powered by Google (Custom Search), so you are searching inside Google, but only in some sites, as Forum Nokia, Sun, Adobe and some other blogs and sites. 

 

The URL is www.mobiledevsearch.com and I'm inviting all mobile developers to suggest sites to add to the search engine. You can suggest blogs, user groups, forums, etc. in the site or leaving a comment on this post. We can have more accurate results when we are looking for mobile code, advices, documentation and samples.

 

I'll add more features and improvements later, cataloging the results in other way, by site, by platform, and other things. If you want to collaborate in a more intensive way, I can invite you to be a collaborator. With your Google Account, you can add and label new sites to the search engine.

The Future of Java ME II

firt | 23 October, 2006 06:26

 

Following my last post, I’m analyzing the Future of Java ME (J2ME).

Designing new UI with SVG

 

Standard Vector Graphics format, will be one of the revolutions in Java UI designs, using an SVG subset called Tiny SVG. Everyone who developed a Graphic User Interface using LCDUI Canvas (or FullCanvas in Nokia UI) knows how difficult is to design a cool UI interface; we have to do everything with Java code with a few shape methods (like fillRect), or loading heavies PNGs.

 

Many vendors, all of them in JCP (Java Community Process) are supporting the SVG API (JSR 226). Many SDKs and emulators are supporting it, and Nokia’s devices are supporting it from Series 40 3rd edition Feature Pack 1 and Series 60 3rd edition Feature Pack 1. You can find a great document from Forum Nokia about this API here

 

SVG has many advantages, as the following ones:

  • It’s a standard.
  • It’s XML based, so it is a text file, easy to store and transmit.
  • It allows to design vector graphics that scales automatically to fit the canvas size of the device.
  • It allows vector animations.
  • It allows to define hotspots over the image, to be navigated and selected by the user (yes, we can “listen” to this events).

 

So, from Java code we can capture when a user selects a hotspot, and we can also animate and modify the SVG elements structure dynamically. For example, we can change an object property (color, size, rotation, etc.), we can add new elements (like shapes, other SVG document) when we need it.

 

Using this technology, not only we are having greats advantages over using Canvas and Graphic classes, we can integrate graphic designers in our team easily. SVG is a format that every graphic designer can export from a vector tool (like Corel Draw or Adobe Illustrator), so we won’t need to convert designs into PNGs and Java code anymore.

 

And JCP team is working on a newer API that will extends this one: JSR 287 (SVG API 2.0). This API will work with SVG 1.2 format, that supports multimedia, audio and video, alpha transparency and gradients objects.

 

Other format waiting in Java ME community is CDF (Compound Document Format, JSR 290). But this is for other post...

Internationalization

 

For everyone who develops applications for a non-English market (as me), the ability to generate multiple versions for each language is a great feature. JCP (leader by Nokia in this case) worked in the Mobile Internationalization API (JSR-238). Using this API installed in the device, we can handle external resources files per language, and we can format dates, numbers and currency depending on the culture of the user’s country.

 

This API is currently supported in many IDEs for working in design mode. A great feature of some IDEs is the ability to generate many JAR packages, one per language or group of them.

 

Contactless

 

Contactless Communication API (JSR-257) allows mobile devices to read information available around in the environment, using many technologies, like visual tags (bar codes or similars), or RFID (Radio Frequency Identification). This will allow mobile phones to read URLs, number phones, semantic information, prices or other information from the “real world” to the Java ME application.

 

 

What’s next

 

In next posts I’ll talk about MIDP with CDC, Next Generation Mobile Platform, MIDP 3.0 and new tools and IDEs. 

 

See you on next post!

 
 

Rate This

 
 
Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditDiigoTechnocratiTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
京ICP备05048969号    Email Newsletters Press Terms & Conditions Privacy Policy Sitemap Contact Us © 2009 Nokia 
RDF Facets: qdcZidentifierQSxhttpE3aE2fE2fblogsE2eforumE2enokiaE2ecomE2fblogE2fpaulE2dcoultonsE2dforumE2dnokiaE2dblogE2farchivesE2f2009E2f04E2fX qdcZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qdcZtypeQUqfntypeZBlogContentQ qdcZtypeQUqfntypeZCommunityContentQ qdcZtypeQUqfntypeZE52esourceQ qdcZtypeQUqfntypeZWebpageQ qdcZtypeQUqmarsZManagedE52esourceQ qdcZtypeQUqwebZInformationE52esourceQ qdcZtypeQUqwebZPageQ qdcZtypeQUqwebZE52esourceQ qdcZtypeQUqrdfsZE52esourceQ qfnZtypeQUqfntypeZBlogContentQ qfnZtypeQUqfntypeZCommunityContentQ qfnZtypeQUqfntypeZE52esourceQ qfnZtypeQUqfntypeZWebpageQ qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX qrdfZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qrdfZtypeQUqfntypeZBlogContentQ qrdfZtypeQUqfntypeZCommunityContentQ qrdfZtypeQUqfntypeZE52esourceQ qrdfZtypeQUqfntypeZWebpageQ qrdfZtypeQUqmarsZManagedE52esourceQ qrdfZtypeQUqwebZInformationE52esourceQ qrdfZtypeQUqwebZPageQ qrdfZtypeQUqwebZE52esourceQ qrdfZtypeQUqrdfsZE52esourceQ