Battle.Net Mobile Authenticator on Windows Mobile (and to a lesser extent, Android ) Guide
Version 2.3 (Includes pictures, albeit the page istelf is really plain still)
Legacy version 1.12 without Javascript can be found here
By Vivec (admin[place at here]deathcoil.net)
You may also contact me on my warlock: Vivec on Frostmane-US

=====Changelog=====

07/23/09: Initial Release.
07/23/09: Updated to reflect new User Agent Switcher version. Version 1.1
07/28/09: Added more supported phones. Mirrored Intent MIDlet Manager locally. Version 1.11
07/30/09: Updated support list. Added note to EU and/or non-WM users from Nirias of Moonglade-EU. Version 1.12
08/05/09: Added pictures! Updated supported phone list. Version 2.0
08/15/09: Updated support list. Added the excellent contribution from Nirias of Moonglade-EU for Android users. Version 2.1
12/09/09: Updated the list after months of e-mails. My apologies to anyone who contacted me in this time frame. Thank you for your contributions!
12/09/09: Added the brilliant workaround for those who cannot connect their phone via USB cable. Also, a workaround for Android users has been added. Version 2.2
05/22/10: Updated the working/non-working list + contact info. Also updated information for Android users! Version 2.3
08/20/10: Added a link to a locally hosted .jar file.

=====Preface=====

This guide will allow you to run the Java Mobile Authenticator for use with Battle.net account on any Windows Mobile phone.

I highly advise that you scroll down to the Working/Non-Working List at the bottom of this guide to check if anyone has tested your make/model with this guide and to see if any extra caveats are added.

Requirements:

On PC:
Firefox (http://getfirefox.com)
-User Agent Switcher addon for Firefox (https://addons.mozilla.org/en-US/firefox/addon/59)
-Wireless Markup Language addon for Firefox (https://addons.mozilla.org/en-US/firefox/addon/62)

On Phone:
Intent MIDlet Manager 11.1.7.1036 (http://www.webalice.it/risidoro/intent/Risidoro_Intent_MIDlet_Manager_11.1.7.1036.cab) Mirrored locally here
A supported carrier (Unconfirmed. The authenticator synchronization works over any connection. It may be more aimed at being able to charge you.)

Extremely important note: If you are unable to get the Intent MIDlet Manager to work on your phone, you may want to try Esmertec Jbed instead. Some users have reported success using this Java environment when Intent's MIDlet Manager failed. You can download Jbed here.

Another important note: If you use an HTC phone that is relatively new, you may want to check if JBlend is installed. This is a suitable and likely better substitute for the MIDlet manager and most modern HTC phones come with it pre-installed.

=====Note to EU Users and non-Windows Mobile Users=====

Nirias of Moonglade-EU was kind enough to send me this e-mail detailing some important information for both EU WoW players and those without a so-called "supported phone."

"I got the app working on a Sony-Ericsson k600i which is not a Windows Mobile phone by following your guide and skipping the step about the MIDlet manager.... I can [also] add that if 'Purchase by SMS' is cheaper than the Paypal option (which it is [in my part of Europe]) you can use that instead as long as you do NOT accept the incoming Java application on the phone. If you DO accept it on the phone their stupefied download system will mess up your purchase and you have to start over. Instead read the URL from the message details in there and extract the customer ID and follow the rest of the guide with that."


*** UPDATE ***

Nirias was also kind enough to do research on using my guide in conjunction with Android phones which are becoming ever more popular and taking up a larger market share. This is what he had to say regarding how he got the Mobile Authenticator working yet again on a "non-supported phone."

"I got the app working on an HTC Hero which is not a Windows Mobile phone. Hero is based on Android (Linux) and all Android phones are very much alike, so this method is likely to work on any Android phone.

I followed your guide but skipped the step about the midlet manager. Instead I installed the Netmite J2ME Runner (the midlet manager for Android) from Android Market (it's free) and ran the .jad file with that. The J2ME Runner converts the .jar to a regular Android app by wrapping it with some extra code. It basically lets you run it like any other normal app.
You have to enable the "3rd party apps"-feature to actually install the app once it has been converted, but J2ME Runner will instruct you on how to do this.

One thing to note: If you start the Blizzard Mobile Authenticator application twice it may display a black screen at the second invocation. This may be because BMA does not properly handle suspend/resume and doesn't redraw the screen. If your phone has tilt sensitivity you can tilt the phone to horisontal viewing and back again to redraw the screen. If not, you can just use the taskmanager to kill the app and then restart it.

One other thing to note: If your phone doesn't have a keyboard you can get an on-screen keypad (for pressing the "#"-key to sync) by clicking in the top-right corner of the screen."

=====Guide=====

* Note: You can forego the text message steps and simply point your browser to http://deathcoil.net/authguidepics/bma.jar and http://deathcoil.net/authguidepics/bma.jad for the needed files. Skip to step 7 if you choose this method.
1. Firstly, make sure you have all the requirements above.
2. Go to http://mobile.blizzard.com/shared/blizzard_download.php?cont=401&id=2183
3. On the phone select, select Motorola for brand, V3i for phone, and your operator.
4. Click purchase
5. Put in your number, get the text message.
6. Put in the four digit PIN and purchase the application (you'll get charged at this point.)
7. In Firefox, go to Tools -> Default User Agent -> Edit User Agents -> Options
8. Click "New" -> "New User Agent"
9. Clear all fields.
10. Put anything in description. In user agent, put "MOT-V3i/08.B4.34R MIB/2.2.1 Profile/MIDP-2.0" without quotes.



11. Hit OK, followed by OK again.
12. Go to Options -> Default User Agent -> Select the one we just made, which will show up in the list as what you put in "Description" in step 10.
13. Get the URL from the browser message on your phone, it should look something like: http://wap.bizmobil.com/download/XXXXXXX/index.wml where "XXXXXX" is a randomly generated, personal URL
14. Go to that URL and download the application's .jad file. This will be located at http://wap.bizmobil.com/content/games/XXXXXXXX/blizzard_mobile_auth_US_BMA_176x220_icon_15x15_1_0_0.jad



15. Right click the download link for the .jad and copy it to clipboard. Paste it in your address bar and change the .jad to .jar, so it looks like http://wap.bizmobil.com/content/games/XXXXXXXX/blizzard_mobile_auth_US_BMA_176x220_icon_15x15_1_0_0.jar



16. Place both files on your phone as well as the MIDlet Manager .cab all in the same directory
17. Install the MIDlet Manager by opening the .cab
18. Run the MIDlet Manager
19. Go to Menu -> Install -> Local and click on "Blizzard_MC"
20. Now you should be able to run "BMA" within the MIDlet Manager. Note that it requires an active data connection on the initial running.
21. NOTE: You must exit the Blizzard Authenticator app by hitting the "Exit" button. Otherwise you will have to restart your phone as the Java app will crash within its emulated environment.

If you've managed to get this to work on a Windows Mobile Phone not listed at the bottom of this guide, drop me an e-mail.
The Java app SHOULD work on any phone that has Java capabilities. Also e-mail me if you get it working on a non-Windows Mobile phone.

=====Android Users=====

Thanks due to an e-mail I received from someone who used my guide, a workaround has been found for Android users who cannot get the original procedure working.


It should be noted that any undesirable behavior initially reported on Android phones was due to experimental OS' quirks and have since disappeared.

New: A user from the field was kind enough to elaborate on the process of getting the BMA working on Adroid phones and has since written a guide which you can find here.

=====Advanced Workaround That Doesn't Use a USB Cable=====

A brilliant user has e-mailed me the following regarding how he was able to adapt my guide to get the authenticator working on a "non-supported" device and was also able to transfer it without a USB cable using a bit of technical knowledge and a webserver:




=====Appendix: Working/Non-working=====

Working:
Treo 750 [My own phone] - Vivec (Frostmane-US)
LG CF360 - Vivec (Frostmane-US)
Sony Ericsson C905 - Bernheart (Silvermoon-EU)
Sony Ericsson W980 [Apparently MIDlet manager is extraneous]
HTC Touch HD - Xenonium (Jaedenar-EU)
Nokia 5800 XpressMusic - Djaboloke (Anachronos-EU)
Sony Ericsson K600i [Non-WM device!] - Nirias (Moonglade-EU)
Samsung Omnia SGH-i900 [MIDlet manager not req'd] - Lilianá (Aegwynn-EU)
MDA Vario II/HTC-Hermes - Andrewida (Arathor-EU)
HTC Hero [Android device!] - Nirias (Moonglade-EU)
HTC S740 - Missbraun (Ravencrest-EU)
Huawei U1307 [KEmulator on Windows or J2MEWTK on Ubuntu will work]
Palm Treo Pro [May have to install on main mem, not on expansion card]
Sony Ericsson UIQ3/W950i [It's speculated all m600 and P series Ericcsons can be used due to inherent Java capabilities] - Panici (Daggerspine-EU)
LG KP500 [Midlet manager installed via LG PC Suite 2] - Tearless (Aggrammar-EU)
Motorola Karma QA1 [Non-WM phone!] - Itsumi (Zul'jin-US)
HTC Touch Pro 2 [Newer WM HTC phones apparently have a Java architecture already installed, meaning you won't need the MIDlet manager.]
HTC Mogul
X1 running WM6.5 with custom ROM - No contact info
Nokia E90 (no MIDlet manager) - Sindoreis (Xavius-EU)
LG Arena KM900 (no MIDlet manager) - Ellez (Nordrassil-EU)
Nokia E71 (no MIDlet manager) - No contact info
HTC Touch Pro2 (used Sprint Titan Java suite) - Gravitystorm (Stormrage-US)
SE K530i (used Nirias' method) - No contact info
HTC Touch Diamond (uses internal Java) - Gaeios (Dunemall-EU)
Samsung Tocco Lite S5230 - No contact info
Motorola Q9C (used Jbed for MIDlet manager) - No contact info
iPAQ Business Navigator 614c (used internal Sun Java) - No contact info
HTC Touch Cruise (used internal Java environment) - Mezjonis (Aszune-EU)
Nokia 3600 Slide (runs proprietary OS, only needs jar/jad) - Boarson (Kael'thas-EU)
Samsung Omnia Pro B7610 (no MIDlet manager) - Kenotar (Nera'thor-EU)
HTC HD2 (Uses internal JBlend, jad/jar must be in phone's memory and not on an SD card) - No contact info
Samsung S8300 (jad/jar transferred via Bluetooth) - Landon (Azuremyst-EU)
Nokia 6500 Classic - No contact info
Nokia N82 (uses internal Nokia Java suite) - Stefftastiq (Haomarush-EU)
SE W610i (no MIDlet manager) - No contact info
HTC Rose S740 (uses internal Java) - No contact info

It has been theorized that all phones using the Symbian Java OS (such as Sony Ericsson phones) should be 100% compatible with this guide.

Non-working:
Samsung Corby - MIDlet manager will not install. Can we try using Jbed?