iもどき


互換性

iアプリのエミュレーションの再現性、MIDP への準拠、その他制限、 などに関するメモです。

注: このページの情報は最新の状況に追従しない可能性がありますので、最 新の状況を知りたい場合は、ソースコードを読んだり、開発ページ (@SourceForge.jp)をご覧になるなどしてください。


GIF イメージの扱い

iアプリ で使用される静止画像フォーマットは GIF ですが、 MIDP で使用できることが保証されている静止画像フォーマットは PNG のみです。 iもどき変換ツールでは、iアプリ jar ファイル中の GIF ファイルリソースを 自動的に PNG ファイルに変換しますが、 スクラッチパッドからのイメージの読み込みや、 ネットワークからのイメージの読み込みに対しては、変換を行なうことができません。 そのため、このような場合にイメージが正しくロード & 描画できるかどうかは、 動作対象の MIDP デバイスに依存します。

考えられる対処法

*1…サイズ決め打ち問題:

iアプリの中には画像ファイルのサイズを決め打ちで扱うものがあり、 ネットワークからダウンロードしてきた複数の GIF をスクラッチパッドに すき間なく詰め込む場合があります。この場合スクラッチパッドに詰め込む前に PNG に変換してしまうと、GIF よりサイズが増加してしまった場合に格納に 失敗します。これに対処するには、GIF デコーダを搭載するか、 MIDP デバイスが GIF デコードできることをあてにするか、 そのiアプリの変換をあきらめるか、しかないでしょう。


イメージの透過色

iアプリでは透過色ありの GIF を描画すると、正しく透過されますが、 MIDP では (PNGの) 透過色が必ず透過して描画されるという保証はありません。

考えられる対処法


ソフトキーの割り当て

ソフトキーの左右が iアプリ と同じように割り当てられるとは限りません。 左右逆転する場合もあります。これは MIDP デバイスに依ります。generic MIDP デバイスではそもそもソフトキーがあるかどうかもわかりません。 ない場合はメニューなどに割り当てられます。


ソフトキーのイベント

MIDP ではソフトキーのリリースイベントを拾うポータブルな方法はないので、 ソフトキーを押すと、com.nttdocomo.ui.Canvas#postEvent() において、KEY_PRESSED_EVENT のすぐ後に KEY_RELEASED_EVENT が来るようになっています。 実際にはソフトキーを押したままであってもこうなります。


$Date: 2002/05/19 13:57:01 $