Introducing XDA:DevCon – A Conference For Developers By Developers
XDA Developers Android and Mobile Development Forum
Forgot your password?
 
Post Reply+
Tip us?
 
Menneisyys
Old
(Last edited by Menneisyys; 25th October 2007 at 06:36 PM.)
#11  
Retired Moderator - OP
Thanks Meter 7
Posts: 5,381
Join Date: Jul 2005
Quote:
Originally Posted by jockyw2001 View Post
Menneisyys, as usual you did an excellent job! Many thanks

I would welcome one addition though: a table which shows which JSR standards are supported by each midlet manager.

I have spent much time to find out that only IBM J9 supports both JSR-75 (accessing PIM database and the File System) and JSR-82 (Java BT API & serial ports). There exist a couple of applications, e.g. MGMaps, which rely on support for both stds.

Cheers
JockyW
1. Thanks for the kind words

2. JRS-75 (File Connection & PIM) requires an add-on hack (see the "JVM File Connection (part of JSR 75):" row)

3. As far as JSR-82 (BT) is concerned, it did have two third-party BT add-on libraries, but they no longer exist. See http://www.aximsite.com/boards/bluet...d-midlets.html for more info.
Microsoft MVP - Mobile Devices, 2006, 2007, 2008. Make sure you follow my PPC & SP Mag Expert blog HERE.
 
ernestorendon86
Old
#12  
Junior Member
Thanks Meter 0
Posts: 15
Join Date: Jul 2007
Default bt info on a wizard

hi i have months trying to use a software bt info in my wizard htc 8125. it use bluetooth and is like the bloover... i can use it... some help please what i have to install im from ecuador and is a little hard to read all that i dont understan at all. thanks
 
Menneisyys
Old
#13  
Retired Moderator - OP
Thanks Meter 7
Posts: 5,381
Join Date: Jul 2005
Quote:
Originally Posted by ernestorendon86 View Post
hi i have months trying to use a software bt info in my wizard htc 8125. it use bluetooth and is like the bloover... i can use it... some help please what i have to install im from ecuador and is a little hard to read all that i dont understan at all. thanks
I haven't managed to install any 3rd party BT libraries under IBM J9. jockyw2001 may know how this is done.
Microsoft MVP - Mobile Devices, 2006, 2007, 2008. Make sure you follow my PPC & SP Mag Expert blog HERE.
 
ernestorendon86
Old
#14  
Junior Member
Thanks Meter 0
Posts: 15
Join Date: Jul 2007
Default thanks

Quote:
Originally Posted by Menneisyys View Post
I haven't managed to install any 3rd party BT libraries under IBM J9. jockyw2001 may know how this is done.
thanks, somebody helppppp
 
Menneisyys
Old
#15  
Retired Moderator - OP
Thanks Meter 7
Posts: 5,381
Join Date: Jul 2005
UPDATE (11/23/2007):
  1. in the meantime, thanks to XDA-Devs user defcomg, a new, third-party, free Bluetooth (JSR-82) library, BlueCove has been found, which supports IBM J9.
  2. In the second part of this article, I elaborate on how you can “hack” some Nokia classes into MIDlets so that they have a chance to run. I also explain how you can force the installation of MIDlets that, otherwise, are refused to be deployed because of missing library (for example, Bluetooth under Jbed) support.

1. BlueCove

Let’s start with the compatibility issues.

1.1 Real-world (!) compatibility

First, it’s only IBM J9-compliant (NO TAO, NO Jbed, NO Jblend). Even under J9, unfortunately, it’s (as of this writing) pretty much far away from REALLY working. While it correctly implements Bluetooth discovery, in general, it doesn’t go further and just crashes at actually connecting (not only discovering). I’ve tested this with both the Microsoft and the Widcomm Bluetooth stack, using version 6.1.1 (that is, the latest one) of IBM J9.

My compliance test results are as follows:

Super Bluetooth Hack 1.07 (note that the two (2nd/3rd) versions are exactly the same): doesn’t even start (IncompatibleClassChangeError with Vector)

Blooover discovering works; the actual connection doesn’t (IncompatibleClassChangeError with javax.microedition.io.Connection).

3D Constructo Combat: The same: it is able to discover other devices:



but, upon actually connecting to them (or, when you start it in server mode), it immediately crashes and exits.

1.2 Downloading, installing

If you still want to give it a try (again, it’s pretty much useless as of now!):
  • Get bluecove-2.0.1.jar (version as of 11/23/2007) from HERE
  1. if you have WinRAR on your desktop Windows machine, enter the WinRAR bluecove-2.0.1.jar command;
  2. otherwise, rename bluecove-2.0.1.jar to bluecove-2.0.1.zip and click it so that its content is shown;
  • extract bluecove_ce.dll and intelbth_ce.dll from the root of the archive; transfer them to the \bin subdirectory of your IBM J9 installation.

    Note that if you don’t want to hunt for / extract these files yourself, I’ve made them available HERE as a standard ZIP file. Just unZIP it and transfer the two DLL's.
  • copy bluecove.jar to the \lib\jclMidp20\ext directory of your IBM J9 installation. If “ext” doesn’t exist, create it.
  • you’ll need to use special link files to start your Bluetooth-enabled MIDlets. This also means you don’t need to deploy your MIDlets under J9 at all as direct links of this type don’t require the MIDlets to be deployed beforehand. A typical link file looks like this:

    255#"\Storage Card\ibm\bin\j9.exe" -jcl:midp20 -Dmicroedition.connection.pkgs=com.intel.bluetooth -cp MIDletName.jar "-jxe:\Storage Card\ibm\lib\jclMidp20\jclMidp20.jxe" MIDletName.jad

    (An example link file is HERE as a real file.)

    In here, change MIDletName to the filename of the MIDlet and, of course, change \Storage Card\ibm to the actual path of your IBM J9 installation.

Note that you’ll also need the JAD files in this setup. Should you not have them, use the free JADMaker to create them from JAR files (see the link for more info). If you don’t provide any absolute directories in the link file to the JAR / JAD files, then, you’ll need to copy the JAR file to the \lib\jclMidp20\ext directory of your IBM J9 installation before invoking the MIDlet through the link file. This is the same directory where bluecove.jar should reside. Also, the JAD file must be in the same directory as the lnk file itself.

2. Some additional hacking

2.1 Nokia classes missing in the game

If you try to run 3D Constructo Combat under J9 (I’ll elaborate on other MIDlet managers later), you’ll notice at once it doesn’t run. The sole reason for this is the lack of some Nokia-specific libraries in the MIDlet manager. You can, however, easily “hack” these classes into the JAR file of the MIDlet itself.

To do this, first, download THIS archive and unZIP it. Second, get WinRAR and, after installing it, enter the WinRAR jarfilename command to open the JAR (the main MIDlet) file. Now, just drag-and-drop the com directory (with all its subdirectories, of course) to the opened JAR file – making sure you don’t drop it on a directory, but in the root.

That’s all; now, your MIDlet might start.

Note that this definitely works with 3D Constructo Combat and J9 but will NOT work with Jbed, not even with the permission hacking I’ll explain in the following section.

(also see THIS Russian-language post for more info if interested. It doesn't contain much additional info, though.)

2.2 Permission hacking

As has been explained in the MIDlet Bible, some (very few!) MIDlets can’t even be deployed under Jbed (and other, less recommended) MIDlet managers. The reason for this is the deployment-time permission checking.

An example of these MIDlets is 3D Constructo Combat, which is refused to be deployed because of the unavailability of a library (here, a Bluetooth one):



You can easily help this and make MIDlets at least deployable (being actually runnable is another question). To do this, enter the WinRAR MidletFileName.jar command and extract the META-INF\MANIFEST.MF file. In there, look for the MIDlet-Permissions: row. For example, with 3D Constructo Combat, it’ll be the following:

MIDlet-Permissions: javax.microedition.io.Connector.bluetooth.client,j avax.microedition.io.Connector.bluetooth.server

Just delete it and overwrite the original META-INF\MANIFEST.MF file with the new version, all this in the JAR file. Again, the new file no longer contains the MIDlet-Permissions: row. Now, the MIDlet at least becomes deployable as can also be seen in THIS screenshot. (This, again, doesn’t mean Jbed will be able to run it as well. It won’t, not even with the above-explained Nokia class hack.)
Microsoft MVP - Mobile Devices, 2006, 2007, 2008. Make sure you follow my PPC & SP Mag Expert blog HERE.
 
Menneisyys
Old
#16  
Retired Moderator - OP
Thanks Meter 7
Posts: 5,381
Join Date: Jul 2005
UPDATE (11/24/2007): At last: an M3G-capable, much more gaming-friendly Jbed version is out!

As is stated in the Bible (as can also be seen in the main game compliance chart), the recommended, current version of Jbed has very limited game compatibility. If you do want to use it and do need to run for example M3G titles, so far, you needed to turn to alternative and, in many respects, inferior MIDlet managers. Now, this has changed: thanks to XDA-Devs forum members viperj and defcomg, a brand new and really great version has been posted.

This is version 070524.2.1 - that is, slightly older than the current, 070802.2.2 version. The major disadvantage of this version, compared to the 2.2 one, is the complete lack of sound emulation.

It runs all the games running under the old, M3G-capable Jeodek (see their list HERE) and is very fast. Furthermore, it isn’t affected by the locale bug of version 2.2 – that is, the inability to run under any locales using a language with a non-Western alphabet (for example, most East-European languages).

I’ve tested it with I-Play’s FIA World Rally Championship 3D, Namco’s Arcade Golf and High Speed 3D. All these worked flawlessly (except for, of course, the complete lack of sound), unlike under 2.2. Under 2.2, they didn't even start or crashed later.

If you really need sound emulation and it’s indeed able to run the given title, you will still want to version 2.2 of Jbed, though. For example, it runs Simcity Societies with great sound.

Installation

To install it, just grab THIS file, unRAR it to, preferably, the “J” subdirectory on your storage card (so that jbed.exe is right in the “J” subdirectory) and import THIS Registry import file (change all occurrences of "Storage Card" to the name of your card if it has another name). You might also want to copy a link to the main executable, jbed.exe, to \Windows\Start Menu\Programs (or, just \Windows\Start Menu\ on MS Smartphones). I’ve created the link file HERE.
Microsoft MVP - Mobile Devices, 2006, 2007, 2008. Make sure you follow my PPC & SP Mag Expert blog HERE.
 
Menneisyys
Old
#17  
Retired Moderator - OP
Thanks Meter 7
Posts: 5,381
Join Date: Jul 2005
UPDATE (01/16/2008): In the meantime, it has turned out that you can use the non-M3G-specific version of Jbed (that is, Cloudyfa's 20070802.2.1) with any localizaton setting if and only if you start your specific MIDlet directly; that is, via a system-level shortcut.

I've also been using Opera Mini 4 on the Blackberry 8800, using the default MIDlet manager coming with the device. Note that, unlike the built-in Web browser and the mailer, you MUST specify the APN of your operator for it to work. Otherwise, it'll just report being unable to connect to the Net after starting (and a lengthy installation process). To do this, go to Options / Advanced / TCP?IP and enter your APN (for example, "Internet" with T-Mobile.)
Microsoft MVP - Mobile Devices, 2006, 2007, 2008. Make sure you follow my PPC & SP Mag Expert blog HERE.
 
cicciocant
Old
#18  
Senior Member
Thanks Meter 6
Posts: 417
Join Date: Oct 2005
Hello Menneisyys.

Have you seen this?
http://www.pda4x.com/read.php?tid=59304

It work great with full screen java game and good sound.
 
Menneisyys
Old
#19  
Retired Moderator - OP
Thanks Meter 7
Posts: 5,381
Join Date: Jul 2005
UPDATE (02/01/2008):
There are new builds of both Jbed and Jblend (two excellent MIDlet Managers – see the Java MIDlet Bible for more info). Due to lack of time, I haven’t tested them. Both has been done by Da_G (his projects’ homepage is HERE) and are accessible HERE. Note that you MUST register yourself (it’s free and is done quickly) in order to access the page above (along with the download).

I hope I’ll be able to test them some time – along with the default Blackberry MIDlet manager. (I might wait with testing the latter until version 4.5 of BB OS is released, though.)
Microsoft MVP - Mobile Devices, 2006, 2007, 2008. Make sure you follow my PPC & SP Mag Expert blog HERE.
 
Menneisyys
Old
#20  
Retired Moderator - OP
Thanks Meter 7
Posts: 5,381
Join Date: Jul 2005
UPDATE (02/06/2008): Another Jbed MIDlet Manager version has been released: JRebeiro_EsmertecJbed_20071119.3.1.

It’s available HERE (at the bottom of the first page).

As I don’t have the time to thoroughly test it, feedback is REALLY welcome!
Microsoft MVP - Mobile Devices, 2006, 2007, 2008. Make sure you follow my PPC & SP Mag Expert blog HERE.

 
Post Reply+
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

report this ad
Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Go to top of page...

XDA PORTAL POSTS

Careers in Android: What Hiring Managers Won’t Tell You – XDA Developer TV

XDA Developer TV Producer Jayce released a video a … more

Coloring Your Logcat World

Getting feedback for your app during development is as simple as adding logging info where necessary and looking … more

Guide Your Sheep to Safety with Finger Shepherd

Just a coupe of days ago, we brought you news about a game calledAgent Sheep. In that … more

Nandroid Manager Receives Major Update

Do you find yourself obsessively jumping from ROM to ROM? And do you hate having to restore a full … more