Log in

View Full Version : Major Java MIDlet manager update: now, parallel execution possible under Jbed etc.


Menneisyys
04-05-2009, 03:33 PM
Esmertec, developers of the Jbed MIDlet manager, are constantly releasing newer versions of their environment in various Windows Mobile models. These new managers are, then, quickly get mirrored as self-standing, standalone, downloadable and installable installers over the Internet (and, most importantly, XDA-Developers).

If you haven’t read my MIDlet Manager Bible (http://www.smartphonemag.com/cms/blogs/3/the_java_midlet_bible) (you should!), a quick introduction: with a MIDlet manager, you’ll be able to run both applications and games. The former include several high-quality titles like the Opera Mini Web browser (see THIS (http://www.smartphonemag.com/cms/blog/9/yet-another-review-comparison-update-web-browser-teashark) for more info) and the latter too: some Java games are decidedly better than the comparable titles on Windows Mobile (if any).

Currently, there are three major versions you should take a note of:

20080912.5.1 (http://forum.xda-developers.com/showthread.php?t=407667) (direct link (http://forum.xda-developers.com/attachment.php?attachmentid=134660&d=1228335859)); memory card-compliant version (http://forum.xda-developers.com/showthread.php?t=486697) (direct link (http://forum.xda-developers.com/attachment.php?attachmentid=160940&d=1235590963))

The main advantage of this version, compared to the other two, is that it has a storage card-compatible version. If you plan to install a lot of MIDlets (for example, games) and storage usage is a concern, you should go for this one as it keeps both the main executable (the MIDlet manager itself) and the deployed MIDlets on the storage card. It’s also pretty much gaming-friendly: it supports M3G (that is, the 3D library) and has no problems with the softkeys in games, unlike with the version introduced next.

20081203.2.1 (http://forum.xda-developers.com/showthread.php?t=407667) (direct link to download (http://forum.xda-developers.com/attachment.php?attachmentid=155494&d=1234179263)); memory card-compliant version (http://forum.xda-developers.com/showthread.php?t=486697) (direct link (http://forum.xda-developers.com/attachment.php?attachmentid=160941&d=1235591012))

If you’re a gamer, you will most probably want to avoid this version as it doesn’t support M3G (and some other gaming libraries, I bet); this means very few games are compatible with it. And the ones that are (for example, Simcity Societies), might not work as expected if they depend on the two hardware softkeys (they’re messed up in games.) Note that this doesn’t affect games using the touchscreen; for example, Gameloft’s Windows Mobile-compliant, touchscreen-controlled titles like Prince of Persia or Asphalt4, which run equally well in all these MIDlet managers (with sounds and flawless stylus / touchscreen control). (Not that you would want to prefer the latter to the native WinMo version. Probably only if you have a VGA device – the native version, currently, only displays its window in a 240*320 window in the upper right corner of the VGA screen.)

However, this version has something no other Jbed version offers: the ability to run more than one midlets concurrently.

This, so far, has been impossible with the Esmertec products. As has been explained in the MIDlet Bible, you either needed to stick to an alternative, parallel execution-capable MIDlet manager (like the vastly outdated and not recommended TAO Intent) or, if you “only” need to run two MIDlets at the same time, a Jbed + Jeodek combo.

Now, this is no longer necessary. If you press the green phone button during the execution of a MIDlet and, then, press the red button so that you can cancel the dialpad screen, and, then, click the MIDlet manager icon, you’ll be taken to a brand new screen:

http://www.winmobiletech.com/092007MidletBible/JbedAMSDemo.png

At first, here, only one program (or game) will be listed as active. (The screenshot above shows four running at the same time; at first, of course, only one will be shown.) If you press the left softkey (AMS), you’ll be taken to the standard list of the deployed MIDlets, where you can start new, other MIDlets, while the already running one(s) continue(s) executing.

I’ve played a lot on my non-phone Pocket PC’s (Windows Mobile Classic models). I couldn’t find out how you can get to the same “running list”. I’ve tried suspending the running MIDlet by pressing the OK and the Start Menu button – in vain: when invoking the midlet manager again (by clicking its icon), the already-running MIDlet was presented, and not the process list, unlike with the phone edition case. That is, it seems it’s not possible to make use of this feature on non-phone, “classic” Pocket PC’s.

Note that you can easily check whether a particular Jbed version is capable of executing different MIDlets in parallel. Just bring up “Menu” (right softkey in the traditional MIDlet directory view) and check whether there’s “Task Manager” in it. If there is, then, your Jbed is parallel executing-capable. (Incidentally, this “Task Manager” takes you to the list of currently, concurrently running MIDlets we’ve just seen an example of.)

http://www.winmobiletech.com/092007MidletBible/JbedMainmenu-Taskmanager.png

Finally, following is the About screen of the particular Jbed version:

http://www.winmobiletech.com/092007MidletBible/Jbedams-about.png

Note that there is a separate build of this Jbed version (and the previously introduced 20080912.5.1) that can be installed on a memory card (or a filestore, if present, like on the HP iPAQ’s or some cooked ROM’s for HTC’s phones). You can’t install the base (not meant for storage cards) versions onto a storage card. Also note that the currently available, storage card-friendly 20081203.2.1 version is, to some degree, buggy: when you install the CAB file, the JAR / JAD file associations aren’t correctly set, which means the MIDlet manager won’t be invoked to deploy the MIDlet if you click a JAD / JAR file in the local file system – or, when you download them straight from Web. (Like from operamini.com.) To fix this, just use my previous registry import files or, alternatively, stick with installing local (that is, ones on, say, the memory card) MIDlets from inside Jbed.

Finally, the (currently) latest version of Jbed is

20090217.5.1R2 (http://forum.xda-developers.com/showthread.php?t=407667) (direct link (http://forum.xda-developers.com/attachment.php?attachmentid=172753&d=1238842927))

Let’s start with the cons. As opposed to the two previously-discussed versions (20080912.5.1 and 20081203.2.1), this, currently, doesn’t have a version that could be installed on a memory card. Also, if you have a VGA device and prefer playing Java games, you will certainly dislike it crashing at any kind of audio output – not just music, but also plain in-game sounds - even those of the Gameloft games, which, otherwise, are Windows Mobile-friendly (after all, for the Touch HD, most of the games they offer are written in Java and are not native Windows Mobile apps; it’s only with lower-resolution QVGA models that they have significantly more titles).

As far as the pros are concerned: this is the last and most up-to-date version; therefore, if you don’t need storage card-based storage, gaming with sound on VGA devices or parallel execution capabilities, you may want to go right for it. I, however, don’t know whether it’s significantly better than the previously introduced versions.

The comparison / feature chart

In order to be able to easily compare the features / capabilities of each MIDlet manager, I’ve compiled a chart of the three recommended Jbed versions and, for comparison, the one recommended in the MIDlet bible (Clodyfa 20070802.2.1).

Note that in the sound and softkey tests I’ve used four different test devices: the VGA HTC Universal and HP iPAQ 210 and the QVGA HTC Wizard (these three are touchscreen-based Pocket PC’s, the two HTC models also being phones – that is, Windows Mobile Professional devices) and the QVGA HTC s710 / Vox touchscreen-less MS Smartphone (Windows Mobile Standard).

Note that none of the MIDlet managers is capable of playing back music on VGA devices (I’ve tested this with several games; for example, Simcity Societies). QVGA devices (and, particularly, touchscreen-less MS Smartphones) fare far better in this respect. Also note that as the iPAQ 210 doesn’t have dedicated softkeys, I’ve redefined (in Settings / Buttons) the Contacts and the Messaging buttons to be the left/right softkeys, respectively. Almost none of the games originally written for other, non-touchscreen platforms; this is why you just can’t click their on-screen buttons / menu items to activate them. (Again, native touchscreen-enabled titles like the Gameloft games sold for WinMo phones like the HTC Touch HD behave differently.)

The chart is as follows (HTML original, with clickable links, HERE (http://www.winmobiletech.com/092007MidletBible/chart0904.html)):

http://www.winmobiletech.com/092007MidletBible/chart0904.png