Tutorials
Introduction to the J2ME Cousin iAppli Java
What and Why i-mode
i-mode is owed by NTT DoCoMo in Japan and is the world's largest cell phone provider with a subscriber base over 46.6 million users.
It is not only dominant in Japan but slowly spreading to other parts of the world, such as France, Germany, Italy, Taiwan and Spain.
In more recent significant news NTT DoCoMo has recently released a secure eWallet solution that allows mobile users to perform bank
withdrawals, credit card purchases or make airline reservations.
In short i-mode is made up two technologies the first is iHTML which is DoCoMo own propriety markup language, essentially an extension
of cHTML. cHTML is W3C standard commonly referred to has compact HTML, but because NTT DoCoMo originally launched i-mode with cHTML
most people remember cHTML over iHTML.
Okay onto the Java part, the second main technology that makes up i-mode is Java iAppli which NTT DoCoMo own Java API extensions along
with Sun Microsystems CLDC. It is not quite J2ME but almost with a few differences. Unlike, porting to Brew, MoPhun, Symbian or
MS SmartPhone it is almost seamless, mainly because it is still Java. The example below will demonstrate how similar the two
really are.
Why did they make their own well at the time there was no WAP 2.0 nor xHTML only WAP and as we all know WAP provides a limited visual
appeal. As well, J2ME wasn't even finalized at the time. In addition, NTT DoCoMo made other advancements such as the invention of
WTCP, which is now apart of the WAP 2.0 specification.
Granted there are some difference between iAppli and J2ME the advantages of porting your existing J2ME applications/games onto i-mode
environment will pay off. There are already several game studios that have launch their titles to i-mode, such as MacroSpace
( http://www.3g.co.uk/PR/March2004/6765.htm ) and THQ Wireless ( http://wireless.ign.com/articles/529/529876p1.html ). To get feel
for some the other services provide on i-mode check out this link http://www.base.be/en/imode_services.html
Lets Get Started!
Well now that you know a little about i-mode, Java iAppli and the benefits of porting or making for scratch games/applications for
i-mode lets checkout development kit with the classic Hello World.
First we can download the Toolkit, documentation and JavaDoc from www.attwireless.com, go to the developer section. Yes that's right
AT&T supports i-mode, well its been re-branded and modified to become mMode. Here are some news articles about this
http://www.internetnews.com/wireless/article.php/1010171 and http://www.wired.com/news/business/0,1367,51878,00.html .
Here is a simple HelloWorld example you can make with Java iAppli:
import com.nttdocomo.ui.IApplication;
public class HelloWorld extends IApplication {
public void start() {
System.out.println("Hello World");
}
}
The toolkit is similar the Sun WTK, start it up and “Create New Project", copy and paste the above source code and name the file
HelloWorld.java. Place the file in [iappli-install-home]\apps\HelloWorld\src. Click on the ADF configurations and fill in the
appropriate data, this is similar to the JAD file configurations except creates what is called a JAM file instead of a JAD file. For
the bare minimum, you will need to fill in the “AppName" and “AppClass", see screen shot below:


Tips and Hints
* Same mobile constraints apply screen size, memory, color, frame rates… etc For example for DoJa 1.5 in Europe applications
have 30 kb maximum size and 100 kb of scratch pad memory (we know this better as RMS).
* To access the local persistence data (Scratch Pad) you need to use the Generic Connection Framework ie: "scratchpad:///0"
* If you are developing for money, its best you check with your aggregator, operator and/or wireless agent to see
what opportunities are there for you to get your application/game into the i-mode market.
Resources
* NTT DoCoMo - http://www.nttdocomo.co.jp/english/p_s/imode/
* NTT DoCoMo Java Specifications - http://www.nttdocomo.co.jp/english/p_s/i/java/index.html
* NTT DoCoMo iAppli FAQ - http://www.nttdocomo.co.jp/english/p_s/i/java/qa.html
* Att Wireless – http://www.attwireless.com Go to the developer section and register if you don't already have an
account there the DoJa SDK 1.5 is available under the Software Development Kits section
Related News
* http://www.cellular.co.za/news_2004/feb/022704-2million-i-mode-users-outside-Japan.htm
* http://news.com.com/Carrier+turns+cell+phones+into+wallets/2100-1039_3-5302718.html?tag=nefd.top
Fix Point Math Library
* http://www.ai.mit.edu/people/hqm/imode/fplib/
Books
* i-Mode Developers Guide
* i-Mode A Primer
* The i-mode Wireless EcoSystem
* i-mode Crash Course
