| この記事は更新が必要とされています。
この記事には古い情報が掲載されています。編集の際に新しい情報を記事に 反映させてください。反映後、このタグは除去してください。 (2009年5月) |
DoJaプロファイル(ドゥージャプロファイル)はNTTドコモグループの携帯電話(フィーチャーフォン)であるmovaシリーズ及びFOMAシリーズに搭載されるJava実行環境の仕様である。後継のStarプロファイル(スタープロファイル)も本項で記載する。DoJaは開発者向けの用語であり、エンドユーザー向けには「iアプリ」「iアプリDX」「メガiアプリ」などの名称となっている。
特徴[編集]
DoJaはサン・マイクロシステムズ (以下「サン」と略)のJavaプラットフォーム構想において、Java MEにおける、CLDC上の1プロファイルとして位置づけられる。
携帯電話は一般に大画面のディスプレイやマルチウィンドウシステム、マウスなどのポインティングデバイスを持たない上、ハードウェアスペック(CPUスピード、メモリ容量)がデスクトップ・サーバに比べて比較的貧弱であるなど、デスクトップのJava環境と比べて大きな差がある。そのため、DoJaのJava APIもJava SEと比べてかなりの違いがある。
ただ、Java MEのCLDCの仕様は、デスクトップのJava SEのサブセットであるが、マルチスレッド処理を含めて、本当のJavaプログラミングを行うことが可能である。ただし、DoJa 3.5まではCLDC 1.0のため、浮動小数点数処理がない、ファイナライザが動作しないなどの制約があった。
DoJaが動作する携帯電話上においては、ファイルシステムを持たず、データの保存には「スクラッチパッド」と呼ばれる領域を用いる。また、iアプリをダウンロードしたホストとのみ、ネットワーク通信を行うことができる。
実行形態[編集]
DoJaでは、コンパイルしたJavaクラスファイル、および実行に必要な画像や音楽データを含めて、Jar形式でパッケージ化しておく。このように準備されたiアプリはHTTPあるいはHTTPS通信を通じて、携帯電話にダウンロードされ実行される。メモリースティックやSDカードなどの外部記憶媒体を使ってインストールする方法は公式に発表されていない。セキュリティに関しては厳しく、他のアプリとスクラッチパッド上のデータを共有したり、電話帳やメールデータにアクセスするには、iアプリDX仕様を使う必要がある。
尚、DoJaで実行するClassファイルは、パッケージする前に通常のコンパイルのほかに、preverifyというツールを使って前処理(事前検証)を行っておく必要がある。これはCLDCの制限(というより特徴)であり、実行時・ロード時のバイトコードベリファイの負荷を減らすために、あらかじめ型情報を調査し、その情報をJavaクラスファイル内に添付しておく必要があるためである。
API[編集]
CLDCは、組み込み向けの一般的な共通機能を絞り込んだAPI仕様を持っており、GUIなどを定義していない。Java MEの枠組みでは、それらはプロファイルで定義される。
DoJa APIにはiアプリ基本API、iアプリオプションAPI、iアプリ拡張APIの3種類がある。
- iアプリ基本APIとは共通仕様で、全機種が標準にあり、APIおよび動作が規定されている。
- iアプリオプションAPIとは共通仕様で、APIおよび動作が規定されているが端末ごとに搭載の有無はメーカーが決定している。
- iアプリ拡張APIとはメーカーが独自にAPIおよび動作を規定したもので、ソースレベルで他のメーカーと互換性がないことを考慮する必要がある。
iアプリオプションAPI及びiアプリ拡張APIについては、対応している携帯電話でないと実行できない。
DoJaにおいてUI処理には、com.nttdocomo.ui.*パッケージに含まれる独自のUIクラス群を使用する。入出力においては、CLDCのジェネリックIOフレームワークに基づき、ネットワーク入出力処理(HTTP, HTTPS)、スクラッチパッドアクセス処理、Jarリソースに含まれたデータの入力処理などを行うことができる。
DoJa 2.0 (504i, 2051, 2701, 2102V)以降は、待ち受け画面のように常に常駐して動作する「待ち受けiアプリ」の機能や赤外線通信機能が追加された。また、DoJaオプション機能としてゲーム向けの機能(スプライト、3Dのポリゴンなど)、カメラ機能などが定義された。
DoJa 3.0 (505i, 506i, 900i)では、ゲーム向け機能の一部が標準機能になった。また、「iアプリDX」として、携帯電話の電話帳にアクセスしたり、メールなどと連携できるような機能が追加された。これらのiアプリDX機能の詳細については一般には公開されていない(公式コンテンツプロバイダ向けにのみ提示されているものと思われる)。またオプション機能としてバーコードの読み取り機能、指紋認証機能などが追加されている。
DoJa 4.0では基本APIにマスコットカプセル4.0を制御する3Dグラフィックス描画機能と3Dサウンド制御機能が追加され、またDoJa 2.0以降と同じくマスコットカプセル3.0を制御する拡張APIも削除されずに残された。つまり、マスコットカプセル3.0及び4.0が使用でき、それぞれの特徴として3.0は値として整数を使用するため高速で動作するが4.0は値として浮動小数点を使用するため3.0より描画が遅い。ただし、4.0LEではマスコットカプセル4.0を制御する3Dグラフィックス描画機能と3Dサウンド制御機能は標準APIは使用することはできない。
DoJa 4.1では基本APIにセキュリティ機能(デジタル署名)およびSDカードを制御するAPIが追加された。
DoJa 5.0では基本APIにメモリ管理、GPS制御、オプションAPIにハードウェアを使用するOpenGL ES 1.0相当の3D描画、Bluetooth制御のAPIが追加された。
DoJa 5.1ではOpenGL ES 1.1対応。
Star 1.0では、ウィジェットアプリ(iWidget)機能、iアプリオンライン機能、iアプリコール機能、iアプリ-Flash連携機能などが追加になった。
Star 1.1では、タッチパネル対応など。
Star 1.5では、オーディオ出力先イベント、各種デバイス(コンパス・加速度センサ・歩数計など)対応。
Star 2.0では、内部ストレージへのアクセス、1ドット単位でのフォントサイズの指定、PNG対応、iアプリ自動起動、MyFACEからのiアプリ起動、マナーモード中の音声出力、HTTPで受信可能なレスポンスボディを1MBに拡大などが追加・変更になった。
歴史[編集]
- 最初の版のDoJa 1.0仕様は、デジタルムーバ503i及び503iSシリーズ並びにFOMA2001、2002、2101Vシリーズに搭載。2001年1月26日発売開始[1]。
- DoJa 2.0仕様は、mova 504i及び504iSシリーズに搭載。
- DoJa 2.1仕様は、FOMA 2051、2701シリーズに搭載。
- DoJa 2.2仕様は、FOMA 2102Vシリーズに搭載。
- DoJa 3.0仕様は、mova 505i及び505iS、506iシリーズに搭載。
- DoJa 3.5仕様は、FOMA 900iシリーズに搭載。
- DoJa 4.0仕様は、FOMA 901iシリーズに搭載。
- DoJa 4.0LE仕様は、FOMA 700i、701i及び702iシリーズに搭載。
- DoJa 4.1仕様は、FOMA 902iシリーズに搭載。
- DoJa 5.0仕様は、FOMA 903i及び904iシリーズに搭載。
- DoJa 5.0LE仕様は、FOMA 703iシリーズに搭載。
- DoJa 5.1仕様は、FOMA 905iシリーズに搭載。
- Star プロファイル1.0は、2008年公開
- Star プロファイル1.1は、2009年公開
- Star プロファイル1.2は、2009年公開
- Star プロファイル1.3は、2010年公開
- Star プロファイル1.5は、2011年公開
- Star プロファイル2.0は、2011年公開
※DoJa 1.0から3.5まではCLDC 1.0である。DoJa 4.0以降はCLDC 1.1であり浮動小数点が使用できる。
DoJaは携帯電話が新しいデバイスを装備することにそれに対応する制御APIとして拡張されてきた。携帯電話自身の性能もハードウェア技術の進歩により、503i登場当初に比べ飛躍的にその実行速度、容量(一回で送受できる通信量や、スクラッチパッドの容量)、画面サイズなどを増やしているため、登場当初と比較してはるかに高機能なアプリケーションを書くことができるようになって来ている。
特に、アプリケーションサイズの制約は当初10KB(Jar圧縮後(FOMAは30KB)、スクラッチパッド10KB)という極めて厳しいものであったが、DoJa 2.0以降は30KB(スクラッチパッド100KB(505i以降及びFOMAは200KB))まで拡張されている。DoJa 3.5以降は100KB(スクラッチパッド400KB)まで拡張された。ただし、DoJa 4.0LEはJARファイルが30KBまで、スクラッチパッドサイズが200KBまでに制限されている。DoJa 5.0ではプログラムとスクラッチパッドの境界がなくなり、あわせて1MBになった。Starプロファイル1.xは合計2MB。Starプロファイル2.xは合計10MB。
互換性[編集]
同様の携帯電話向けJava実行環境のプロファイルには、サン自身によるMIDPがあるが、開発時期の違いからか、NTTドコモグループ(以下「ドコモ」と略)の携帯電話には採用されるには至らなかった。
au、ソフトバンクモバイル、ウィルコムの携帯電話もJava実行環境を搭載しているが、いずれも世界中で広く採用されているMIDPを採用しており、DoJaとの互換性はない。厳密には、CLDCの範囲内では同様に動作するプログラムを作ることはできるかもしれないが、アプリケーションのパッケージングなどの方法も異なる。いずれにせよ、画面表示などの機能に互換性はないのでそのまま同じものが動作するという意味での互換性は無いといってよい。同じCLDCに基づくJava環境ではあるのでコードの一部もしくは多くを共通化できる可能性はある。
もうひとつ考える必要があるのは、機種間の互換性の問題である。DoJaはJava実行環境の仕様であるため、下位層としてのJava VMの実装やあるいはハードウェアに関して統一がなされていない。このことはJavaの思想からは正しいのだが、Javaアプリケーションの振る舞いに関して携帯電話各メーカ間の実装差異は決して小さくない。
特に商用コンテンツとしてiアプリを開発する場合、機種間の差異は深刻な問題である。版を重ねるにつれて仕様の詳細度も増し、実装差異は一般には解決されていく方向ではあるといえるものの、開発期間の短さや、次々と採用される新機能、新メーカーの参入、そして過去の機種との互換性などを考慮とすると今後とも非常に深刻な問題であるといえる。なお、auの携帯電話ではベースとなるクアルコム社製のアプリケーションプロセッサチップおよび採用されるJava VMが統一されているため、メーカ間互換性の問題は原理的にはおき得ない。
Starプロファイル[編集]
FOMA2008年秋冬モデル(X-0XA)のうち、iWdgt(iウィジェット)・iアプリオンライン対応機種については、新たにドコモとサン・マイクロシステムズによって共同開発されたStarプロファイルが定義された。ただし、DoJaとはAPIの互換性がないため、Star環境によって動作させるためには別途移植作業が必要となる。待ち受けiアプリなど、Starでは廃止される機能が存在する(iWdgtにて代替させる)。今後の仕様拡張はStarでのみ行われる予定。端末には当面の間はDoJa実行環境も並行して搭載される予定。
開発[編集]
ドコモにより無料で提供されているDoJaエミュレータを使用してパーソナルコンピュータ上で開発し、携帯電話にダウンロードさせて実行するというクロスプラットフォームでの開発形態である。DoJaエミュレータは Forte (Sun ONE Studio)などとの連動機能や、フリーソフトウェアを使用し、Eclipseとの連携を行うことができる。
脚注[編集]
- ^ ドコモ,Java搭載iモード端末503i発表──1月26日発売
外部リンク[編集]
 |
ウィキブックスにJava関連の解説書・教科書があります。 |
Java |
---|
プラットフォーム | |  |
---|
オラクルのテクノロジー | |
---|
プラットフォーム技術 | |
---|
主なサードパーティ技術 | |
---|
歴史 | |
---|
主要なJVM言語 | |
---|
コミュニティ |
|
---|
|
|
 |
---|
通信サービス |
|
---|
FOMA端末向けサービス |
|
---|
スマートフォン用サービス |
|
---|
その他サービス |
|
---|
料金・割引サービス |
|
---|
法人向けサービス | |
---|
携帯電話端末 |
NTT DoCoMo PHS(NTTパーソナル)モデル |
---|
パーソナル時代 |
1995年 |
101N - 101S - 101Y - 101P - 101H - 102N - 102Y - 102P - 102H
|
---|
1996年 |
201S - 101U - 202S - 201P - 103P P×P - 301S - 201D - 203S - 302S - 102U - 201T
|
---|
1997年 |
311S - 312S - 313S - 201U - 311P - 311N - 411P P×P - 321S - 311T - 312D - 314S - 315S - 313P
|
---|
1998年 |
311M - 316S - 317S - 551S - 311Y - 315P - 331S - 331P - 341S - 331T
|
---|
|
---|
ドコモ時代 |
パルディオシリーズ (音声機種) |
331S-II - 331P-II - 331T-II - 331N-II - 332S - 551S-II - 611S - 621S - 622S - 623N - 623P - 631S - 632P
|
---|
ブラウザホンシリーズ (音声機種) | |
---|
その他音声機種 | |
---|
通信機種 |
Mobile Card P-in - P-in Comp@ct - P-in m@ster - P-in memory - P-in Free 1S - P-in Free 1P - P-in Free 2PWL - Picwalk P711m
|
---|
|
---|
ドッチーモ | |
---|
mova端末 - PHS端末 - 2001-2003年のFOMA端末 - 2004-2008年のFOMA端末 - 2009-2011年のFOMA端末 - 2012-2015年のFOMA・Xi端末 - 2016-2018年のFOMA端末 | ウイルコムのPHS端末 - アステルのPHS端末
|
端末納入メーカー:三菱電機 (D) - 日立製作所(H) - モトローラ(M) - 日本電気 (N) - 松下通信工業 (P) - シャープ (S) - 東芝 (T) - ユニデン(U) - ソニー(Y) - セイコー電子工業 |
|
NTT DoCoMo movaモデル |
---|
15xシリーズ |
151 |
D151 - F151 - N151 - P151
|
---|
152 | |
---|
153 |
D153 - F153 - N153 - P153
|
---|
155 | |
---|
156 | |
---|
157 | |
---|
158 | |
---|
|
---|
20x・21xシリーズ |
201 |
P201 - D201 - F201 - KO201 - KY201 - N201 - SA201 - SH201 - SO201
|
---|
202 | |
---|
203 |
D203 - F203 - KO203 - N203 - P203 - R203
|
---|
204 | |
---|
205 | |
---|
206 |
D206 - F206 - KO206 - N206 - NM206 - P206 - SH206 - SO206 - N206S
|
---|
207 |
D207 - DE207 - ER207 - F207 - KO207 - N207 - P207 - SO207 - N207S
|
---|
208 |
D208 - F208 - KO208 - N208 - P208 - N208S
|
---|
209i・209iS | |
---|
210i | |
---|
211i・211iS | |
---|
212i | |
---|
213i・213iS・213iWR | |
---|
|
---|
25xシリーズ |
251i・251iS | |
---|
252i・252iS | |
---|
253i・253iS | |
---|
|
---|
5シリーズ |
501i |
D501i - F501i - N501i - P501i
|
---|
502i・502ix | |
---|
503i・503iS | |
---|
504i・504iS・504iC | |
---|
505i・505iS・505iGPS | |
---|
506i・506iC・506iS | |
---|
|
---|
その他 |
6xxシリーズ |
D601ps - P601ps - F601ps - SO601ps - N601ps - P651ps - F601ev - P601ev - SH601em - F661i
|
---|
らくらくホン | |
---|
GEOFREE | |
---|
ドッチーモ | |
---|
自動車電話 | |
---|
FOMAテュアル | |
---|
|
---|
mova端末 - PHS端末 - 2001-2003年のFOMA端末 - 2004-2008年のFOMA端末 - 2009-2011年のFOMA端末 - 2012-2015年のFOMA・Xi端末 - 2016-2018年のFOMA端末
|
端末納入メーカー(日本国内企業):三菱電機 (D) - デンソー (DE) - 富士通 (F) - 国際電気→日立国際電気 (KO) - 京セラ (KY) - 日本電気 (N) - 松下通信→パナソニック (P) - 日本無線 (R) - 三洋電機 (SA) - シャープ (SH) - ソニー / ソニー・エリクソン (SO) 端末納入メーカー(日本国外企業):エリクソン (ER) - ノキア (NM) 自動車電話(E) |
|
2009-2011 FOMAモデル |
---|
2008年- 2009年 (冬・春) |
|
---|
2009年 (夏・秋) |
docomo STYLE series | |
---|
docomo PRIME series | |
---|
docomo SMART series | |
---|
docomo PRO series | |
---|
その他 | |
---|
|
---|
2009年- 2010年 (冬・春) |
docomo STYLE series | |
---|
docomo PRIME series | |
---|
docomo SMART series | |
---|
docomo PRO series | |
---|
ドコモ スマートフォン | |
---|
その他 | |
---|
|
---|
2010年 (夏・秋) |
docomo STYLE series | |
---|
docomo PRIME series | |
---|
docomo SMART series | |
---|
docomo PRO series | |
---|
ドコモ スマートフォン | |
---|
その他 | |
---|
|
---|
2010年- 2011年 (冬・春) |
docomo STYLE series | |
---|
docomo PRIME series | |
---|
docomo SMART series | |
---|
docomo PRO series | |
---|
ドコモ スマートフォン | |
---|
その他 | |
---|
|
---|
2011年 (夏・秋) |
docomo STYLE series | |
---|
docomo PRIME series | |
---|
docomo SMART series | |
---|
ドコモ スマートフォン | |
---|
その他 | |
---|
|
---|
納入企業 |
|
---|
「 」(マーク無):FOMAハイスピード対応機種 -
「*」:Xi・FOMAハイスピード対応機種 -
「**」:FOMAハイスピード非対応機種 -
【新色】は以前に発売された機種の新色版
PHS端末 -
mova端末 -
2001-2003年のFOMA端末 -
2004-2008年のFOMA端末 -
2009-2011年の端末 -
2012-2015年の端末 -
2016-2019年の端末 -
2020年以降の端末
ソフトバンク(09年-15年) -
au WIN(09年-12年) -
イー・モバイル(07年-14年)
|
|
2012-2015 Xiモデル |
---|
2011年- 2012年 (冬・春) |
|
---|
2012年 (夏) |
docomo with series | |
---|
docomo NEXT series | |
---|
ドコモ タブレット | |
---|
その他 | |
---|
|
---|
2012年 (秋・冬) |
docomo with series | |
---|
Disney Mobile on docomo | |
---|
docomo NEXT series | |
---|
docomo STYLE series | |
---|
ドコモ タブレット | |
---|
その他 | |
---|
|
---|
2013年 (春) |
docomo with series | |
---|
docomo NEXT series | |
---|
ドコモ タブレット | |
---|
その他 |
- スマートフォン for ジュニア (SH-05E)*
- HW-02E
- SmartTV dstick 01***
- Home Wi-Fi***
|
---|
|
---|
2013年 (夏) |
|
---|
2013年 (秋・冬) |
ドコモ スマートフォン | |
---|
Disney Mobile on docomo | |
---|
ドコモ タブレット | |
---|
ドコモ ケータイ | |
---|
その他 | |
---|
|
---|
2014年 (春) |
|
---|
2014年 (夏) |
ドコモ スマートフォン | |
---|
Disney Mobile on docomo | |
---|
ドコモ タブレット | |
---|
ドコモ ケータイ | |
---|
その他 | |
---|
|
---|
2014年 (秋・冬) |
ドコモ スマートフォン | |
---|
Disney Mobile on docomo | |
---|
ドコモ タブレット | |
---|
ドコモ ケータイ | |
---|
その他 | |
---|
|
---|
2015年 (春) |
|
---|
2015年 (夏) |
ドコモ スマートフォン | |
---|
Disney Mobile on docomo | |
---|
ドコモ タブレット | |
---|
ドコモ ケータイ | |
---|
その他 | |
---|
|
---|
納入企業 |
|
---|
「 」(マーク無):FOMAハイスピード対応機種 -
「※」:PREMIUM 4G・Xi・FOMAハイスピード対応機種 -
「*」:Xi・FOMAハイスピード対応機種 -
「**」:FOMAハイスピード非対応機種 -
「***」:携帯電話回線非対応 -
【新色】は以前に発売された機種の新色版
PHS端末 -
mova端末 -
2001-2003年のFOMA端末 -
2004-2008年のFOMA端末 -
2009-2011年の端末 -
2012-2015年の端末 -
2016-2019年の端末 -
2020年以降の端末
ソフトバンク(09年-15年) -
au WIN/4G LTE(12年-15年) -
イー・モバイルの通信端末 -
ワイモバイルの通信端末
|
|
2016-2019 Xi・PREMIUM 4Gモデル |
---|
2015年 (秋・冬) |
ドコモ スマートフォン | |
---|
ドコモ タブレット |
- dtab (d-01H)
- dtab compact (d-02H)
|
---|
ドコモ ケータイ | |
---|
その他 | |
---|
|
---|
2016年 (春) |
ドコモ スマートフォン | |
---|
Disney Mobile on docomo | |
---|
その他 | |
---|
|
---|
2016年 (夏) |
ドコモ スマートフォン | |
---|
Disney Mobile on docomo | |
---|
ドコモ タブレット | |
---|
その他 | |
---|
|
---|
2016年 (秋・冬) |
ドコモ スマートフォン |
- Xperia XZ (SO-01J)
- Xperia X Compact (SO-02J)
Galaxy Note 7 (SC-01J)
- AQUOS EVER (SH-02J)*
- arrows NX (F-01J)
- MONO (MO-01J)*
|
---|
ドコモ ケータイ | |
---|
その他 | |
---|
|
---|
2017年 (春) |
|
---|
2017年 (夏) |
|
---|
2017年 (秋・冬) |
ドコモ スマートフォン |
- Xperia XZ1 (SO-01K)
- Xperia XZ1 Compact (SO-02K)
- Galaxy Note8 (SC-01K)
- AQUOS sense (SH-01K)
- arrows NX (F-01K)
- MONO MO-01K*
|
---|
その他 | |
---|
|
---|
2018年 (春) |
ドコモ スマートフォン | |
---|
ドコモ タブレット |
- arrows Tab (F-02K)
- dtab (d-01K)
|
---|
その他 |
- DM-01K (LGエレクトロニクス製)
- らくらくスマートフォン me (F-03K)*
|
---|
|
---|
2018年 (夏) |
ドコモ スマートフォン |
- Galaxy S9 (SC-02K)
- Galaxy S9+ (SC-03K)
- arrows Be (F-04K)
- Xperia XZ2 (SO-03K)
- AQUOS R2 (SH-03K)
- Xperia XZ2 Compact (SO-05K)
- LG style (L-03K)
- HUAWEI P20 Pro (HW-01K)
- Xperia XZ2 Premium (SO-04K)
- TOUGHBOOK (P-01K)
|
---|
ドコモ タブレット | |
---|
|
---|
2018年- 2019年 (冬・春) |
ドコモ スマートフォン |
- Galaxy Note9 (SC-01L)
- Xperia XZ3 (SO-01L)
- Galaxy Feel2 (SC-02L)
- AQUOS sense2 (SH-01L)
|
---|
ドコモ ケータイ | |
---|
その他 | |
---|
|
---|
2019年 (夏) |
ドコモ スマートフォン |
- Xperia Ace (SO-02L)
- AQUOS R3 (SH-04L)
- Galaxy S10 (SC-03L)
- Galaxy S10+ (SC-04L)
- arrows Be3 (F-02L)
- Xperia 1 (SO-03L)
- LG style2 (L-01L)
- HUAWEI P30 Pro (HW-02L)
- Galaxy S10+ Olympic Games Edition (SC-05L)
|
---|
ドコモ ケータイ | |
---|
その他 | |
---|
|
---|
2019年- 2020年 (冬・春) |
ドコモ スマートフォン |
- Galaxy Note10+ (SC-01M)
- Galaxy A20 (SC-02M)
- Xperia 5 (SO-01M)
- AQUOS sense3 (SH-02M)
- AQUOS zero2 (SH-01M)
|
---|
その他 | |
---|
|
---|
納入企業 |
|
---|
「 」(マーク無):PREMIUM 4G・Xi・FOMAハイスピード対応機種 -
「*」:Xi・FOMAハイスピード対応機種 -
「**」:FOMAハイスピード対応機種 -
【新色】は以前に発売された機種の新色版
PHS端末 -
mova端末 -
2001-2003年のFOMA端末 -
2004-2008年のFOMA端末 -
2009-2011年の端末 -
2012-2015年の端末 -
2016-2019年の端末 -
2020年以降の端末
ソフトバンク(16年-) -
au(16年-)
|
|
|
---|
主な人物 | |
---|
関連項目 | |
---|
|
|