Adobe AIRアプリケーションをWeb Runtimeに移植する方法
Article Metadata
Contents |
前提となる知識
- XML,HTMLの基本知識
- ZIPファイルの使用・作成の基本知識
- フォルダ・ファイルシステムの基本知識
- PCからS60端末にファイルを転送する方法
序文
巷には、多くの異なるWidgetテクノロジが存在していますが、その共通点の1つはJavaScript, HTML, XML, Flashなどといった共通のWebテクノロジを含み、名前を変えたZIPパッケージだということです。
ここでは、簡単な Adobe AIR アプリケーションを S60 Web Runtime に移植する方法を示します。
基本的な想定事項
本手法で想定することとして、AIRアプリケーションのコンテンツはモバイル機器に適したものであること、互換性のないJavaScriptを含まないことなどがあります。
手法
ZIPファイルの名前を変更しパッケージ化したWidgetは、以下に示すもので構成されます。
Manifestファイル
パッケージ中のコンテンツを記述している、軽量のフォーマットテキストまたはXMLファイルです。通常は、少なくとも以下のものを含みます。
- アプリケーションのキャプション(名前)
- アプリケーションアイコン(S60 Web Runtimeのものとは異なる)
- 初期ファイル(Initial file)の場所とファイル名
- ユニークID(Unique Identifier)
初期ファイル(Initial file)
アプリケーションが呼ばれる時に起動するファイル(HTML, XML, Flashのどれか)です。
アプリケーションアイコン
デスクトップ上あるいはWidget領域上(例.Apple Dashboard, Windowsサイドバー)でアイコンとして使われる、小さな画像です。
各Widget Runtimeは、独自のフォーマットを使用しています。W3Cが標準化を試みてはいますが。とりあえずここで行いたいことは、AIRパッケージのコンテンツを、それと類似した(S60 Web Runtime)wgzパッケージに簡単に再フォーマットすることです。
AIRパッケージの解凍(Unzipping)
解凍に使用するAIRパッケージについてですが、ここではこちらを使用します。
上記サイトから.airパッケージをダウンロードし、PC上の選択したフォルダに置きます。そして、解凍ソフト(どれでも構いません)を使用して解凍します。もし可能であれば、フォルダ構成を保持するようにしてください。
Windows XP PC上でWinzipを使用する場合の手順: Adobe AIRが既にインストールされている場合、.airファイルを右クリックして"Open with"を選択します。Adobe AIRがまだインストールされていない場合、.airファイルをダブルクリックします。そして、"Extract"を選択し、新たにフォルダを作成し、"Extract"をクリックしてコンテンツを解凍します。
Winzipが出す次のメッセージについては、無視してください。
info.plist Manifestファイルを作成する
.wgzファイルをインストールする時、システムはファイル名 info.plist のManifestファイルを検索します。それは、AIRにおける application.xml ファイルに相当します。ここでは、Web Runtime Manifestファイルを作成するためにAIRのデータを使用する方法を示します。
- \META-INF\AIRフォルダにある、application.xmlファイルを開く
- info.plistファイル用に、 こちらのテンプレートを開く
キャプションをコピーする
application.xmlファイル中にある、次の行を見つけます。
<name>funkyCalc</name>
そしてその値をinfo.plistにコピーします(下記コード中の"XXXXX"を置き換えます)
<key>DisplayName</key>
<string>XXXXX</string>
IDをコピーする
application.xmlファイル中にある、次の行を見つけます。
<id>com.adobe.example.funkyCalc</id>
そしてその値をinfo.plistにコピーします(下記コード中の"com.xxx.xxx.xxx"を置き換えます)
<key>Identifier</key>
<string>com.xxx.xxx.xxx</string>
初期ファイル名をコピーする
application.xmlファイル中にある、次の行を見つけます。
<content>libraryeffects/libraryeffects.htm</content>
そしてその値をinfo.plistにコピーします(下記コード中の"xxx.xxx"を置き換えます)
<key>MainHTML</key>
<string>xxx.xxx</string>
ここで、info.plist ファイルと、AIRパッケージから解凍した残りのファイルをルートフォルダに保存する必要があります。
アイコンを移動し、ファイル名を変更する
application.xmlファイル中にある次の行を確認し、アイコンファイルを見つけます。
<icon>
<image48x48>libraryeffects/thumbpng.png</image48x48>
</icon>
その画像ファイルと、AIRパッケージから解凍した残りのファイルをルートフォルダにコピーし、画像ファイルのファイル名をicon.pngに変更します。複数のアイコンファイルを使用している場合は、48ピクセルのアイコンを使用します。
Zip圧縮してパッケージを作成する
- 好みのパッケージングツールを使い、上記で移植したWidgetの [zip] ファイルを作成します。S60 Web Runtimeでは、Widgetコンテンツはzipファイルのフォルダ内にある必要があります。zipファイルのルート中のファイルではありません。
- 新しく作成したファイル(*.zip)のファイル名を変更(*.wgz)します。
パッケージをデプロイする
コピー&ペースト、Bluetooth、赤外線(Infrared)等を使用して、Widgetインストールパッケージを端末にアップロードすることができます。筆者が試した限りでは、Bluetoothを使い、ファームウェアアップデート済みのE90上でWidgetがインストールできています。(訳注:古いファームウェアバージョンでは、Web Runtime Widgetをサポートしていません)
コメント等がありましたら
コメントがありましたら、本記事のcommentタブを使用してコメントしてください。もし必要であれば、本記事をさらに編集するのも自由です。


(no comments yet)