ホーム > デベロッパ > 携帯 Java アプリ開発手順 −携帯 Java 技術情報−

携帯 Java アプリ開発実践入門

携帯 Java アプリ開発実践入門−携帯 Java 技術情報−

携帯 Java とは

J2ME ( Java 2 Platform, Micro Edition ) は、組込みソフト開発ための Java プラットフォームです。

J2ME の中でも CLDC ( Connected Limited Device Configuration ) は、CPU やメモリなどハードウェア制約が厳しい携帯電話向け Java 実行環境です。

携帯 Java の仕様

NTT ドコモの J2ME / CLDC プロファイルは DoJa です。au や SoftBank、WILLCOM、海外キャリアが採用する J2ME / CLDC プロファイルは MIDP ( Mobile Information Device Profile ) です。

キャリアJ2ME / CLDC プロファイルサービスの名称
NTT DoCoMoDoJa / Stari アプリ / フルアプリ・ミニアプリ・フル+ミニアプリ
auMIDPEZアプリ ( Java ) / オープンアプリ ( Java )
SoftBankMIDPS! アプリ
WILLCOMMIDPJava アプリ

※ DoJa や MIDP のプロファイルにはバージョンの違いがあります。

携帯 Java 開発キット

携帯 Java 開発キットは下記 URL からダウンロードできます。

NTT DoCoMo

http://www.nttdocomo.co.jp/service/imode/make/content/iappli/index.html

au

EZ アプリ ( Java ) : http://www.au.kddi.com/ezfactory/tec/spec/ezplus.html

オープンアプリ ( Java ) : http://www.au.kddi.com/ezfactory/tec/spec/openappli.html

SoftBank

http://creation.mb.softbank.jp/

WILLCOM

J2ME Wireless Toolkit 2.2 を利用します。

エミュレータ用スキン

携帯 Java リンク集

iアプリ開発Tips

NTT DoCoMo Star プロファイルに関するまとめ : http://www28.atwiki.jp/f-01a/pages/38.html

Java VM

Java VM Implementations リンク集 : http://www.ingrid.org/java/vm/

携帯 Java アプリの構成

携帯 Java アプリは、プログラムをコンパイルしパッケージ化した JAR ファイルと、アプリ名やサイズなどのプロパティを記述した ADF ファイルから構成されます。

プロファイルの違い : DoJa と MIDP

アプリクラスと呼ばれるエントリポイントは異なりますが、メソッド定義は同じです。ADF ファイルの拡張子は、DoJa は JAM、MIDP は JAD です。

プロファイルアプリクラスUI クラスADF ファイル拡張子
DoJaIApplicationPanelJAM
MIDPMIDletFormJAD

※ スレッド、ローカルリソースファイルへのアクセスなど、CLDC レベルの機能は、プロファイルが違っても共有できます。 メモリ保存やユーザインタフェースなど、プロファイルレベルの機能は、異なるプロファイル間で共有できません。

携帯 Java プログラム と ADF ファイルの例

//  DoJa でのHelloWorld
import com.nttdocomo.ui.*;
public class HelloWorldApplication extends IApplication {
    public HelloWorldApplication() {}

    public void start() {
        Panel panel = new Panel();
        panel.add(new Label("HelloWorld"));
        Display.setCurrent(panel);
    }
}
// JAM ファイル
LastModified = Mon, 30 May 2005 16:44:40
AppClass = HelloWorldApplication
AppName = HelloWorldApplication
PackageURL = HelloWorld.jar
AppSize = 471
// MIDP での HelloWorld
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class HelloWorldApplication extends MIDlet {
    public HelloWorldApplication() {}

    protected void destroyApp(boolean unconditional) {}
    protected void pauseApp() {}

    public void startApp() {
        Form form = new Form("");
        form.append("HelloWorld");
        Display.getDisplay(this).setCurrent(form);
    }
}
// JAD ファイル
MIDlet-Jar-Size: 951
MIDlet-Jar-URL: HelloWorld.jar
MIDlet-Name: HelloWorld
MIDlet-Vendor: Sophia Cradle, Inc.
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
MIDlet-1: HelloWorld,,HelloWorldApplication