DoJa 5.0 の新機能 (703i ネタもあるよ)

903i 向け i アプリで使われる DoJa 5.0 の仕様が、ドコモのサイトで公開されていた。

902iS からの主な変更点

以下で、「一部機種」と書いてあるのはオプション扱いの機能。ただし、オプション扱いでもほとんどの機種で載せてくるだろうと思われるものには「一部機種」と書いていない。

  • 最大 10MB の「メガ i アプリ」に対応。ただし、100KB を超える jar ファイルについては、ダウンロード元 HTTP サーバが部分取得 (Range ヘッダ) に対応している必要あり
  • 3D モデルの衝突判定を高速に行う専用クラス群が追加された
  • 一部機種で、全画面表示 (ソフトキーが表示されていた領域への描画) に対応
  • 一部機種で、画像や音声などの元データをすぐに破棄できるようになった (902iS までは、元データと表示用の端末内部形式データの両方をメモリに保持しなければならかなかった。ただし、本機能を使用した場合、元データを保持したまま内部形式を作ったり捨てたりできないので、場合によってはかえって不利になるかも)
  • フォントサイズがより細かく指定できるようになった
  • ディスプレイの状態変化を検出できるようになった (F903i のスイングでディスプレイの向きが変わった場合か?)
  • BMP 画像の表示に対応
  • 画像データの透明色指定と、半透明描画に対応 (従来は一部機種のみ半透明描画に対応していた)
  • i モーション動画の全画面再生に対応
  • i モーション動画の音声トラックのみ再生できるようになった
  • 一部機種で、アプリを終了せずにブラウザを起動できるようになった
  • 別のアプリを起動する際の確認画面が表示されなくなった
  • 住所リンクからのアプリ起動に対応 (ブラウザで見ている HTML ページに、903i で新設された "pos:" 形式の URL が含まれている場合、そのリンクを選択することでアプリを起動できる)
  • デコメール管理機能 (テンプレートの作成、利用) に対応
  • データ BOX へのアクセスに対応 (マイピクチャフォルダ、i モーションフォルダ)
  • 一部機種で、ラジオチューナー制御に対応
  • FeliCa アドホック通信 (iC 通信とも呼ばれる。赤外線通信と同じように、FeliCa チップの通信機能を利用して端末間でデータを送受信する機能) に対応
  • SDmini カードなどに保存した外部データへのアクセスに対応
  • 全機種で端末ネイティブのスケジューラを起動できるようになった (902iS までは一部機種のみ)
  • 一部機種で、カメラのコード読み取り機能を起動する際にフォーカスモードを指定できるようになった
  • 端末のアプリ一覧で表示されるアイコンを、アプリごとに変更できるようになった
  • 一部機種で、クライアント証明書の追加インストールに対応。インストールしたクライアント証明書で電子署名も行えるようになった
  • メモリ使用状況をより細かく取得できるようになった
  • トルカデータを一般アプリからも利用できるようになった

目玉となるメガ i アプリ対応を中心に、パフォーマンスチューニングを意識した機能が追加されている。特に、3D データの高速な衝突判定やメモリ使用量の詳細取得など、「各端末の機能を限界まで生かしながら大規模なゲームアプリを開発する」というシナリオでは役に立つかもしれない。
なお、トラステッド i アプリ (公式メニュー内で提供されているアプリ限定で、もうひとつ変更点がある。

  • OpenGL ES 1.0 相当機能に対応。これに合わせて、端末ネイティブのバッファにアクセスするためのクラス群なども追加されている

703i はどうなるか

12 日に行われた発表会では 703i もちょっとだけ紹介されていた。
機能については説明されていなかったようだが、今回公開された仕様によると、703i ではプロファイルが DoJa 5.0 LE となるようだ。現時点で明らかにされている 903i との違いは以下の通り。

  • メガ i アプリには対応しない。jar ファイルは 30K、スクラッチパッドは 200K まで (一部機種ではもう少し行ける)
  • DoJa の 3D グラフィック API には新旧 2 種類あるが、新しい方には対応しない機種がある。903i で追加される高速な衝突判定は新 API を使っているので、新 API に対応しない機種では非対応となる
  • 3D サウンドに対応しない機種がある