デスクトップアプリケーションプロパティの設定

アプリケーション記述ファイルで基本的なアプリケーションプロパティを設定します。ここでは、デスクトップ AIR アプリケーションに関連するプロパティについて説明します。アプリケーション記述ファイルのエレメントについて詳しくは、AIR アプリケーション記述ファイルを参照してください。

必要な AIR ランタイムのバージョン

アプリケーション記述ファイルの名前空間を使用して、アプリケーションに必要な AIR ランタイムのバージョンを指定します。

application エレメントに割り当てられている名前空間によって、アプリケーションが使用する機能の大部分が決まります。例えば、アプリケーションでは AIR 1.5 名前空間が使用されていて、ユーザーが AIR 3.0 をインストールしている場合、アプリケーションでは AIR 1.5 の動作が実現されます(その動作が AIR 3.0 で変更されている場合でも)。名前空間を変更し、アップデートを発行した場合にのみ、アプリケーションで新しい動作と機能を利用できます。セキュリティと WebKit の変更は、このポリシーの主な例外です。

ルートの application エレメントが持つ xmlns 属性を使用して、名前空間を指定します。

<application xmlns="http://ns.adobe.com/air/application/3.0">

アプリケーション ID

いくつかの設定は、パブリッシュするアプリケーションごとに一意にする必要があります。このような一意の設定には、ID、名前、ファイル名などがあります。

<id>com.example.MyApplication</id> 
<name>My Application</name> 
<filename>MyApplication</filename>

アプリケーションのバージョン

AIR 2.5 よりも前のバージョンの AIR では、version エレメントにアプリケーションのバージョンを指定します。任意の文字列を使用できます。AIR ランタイムはストリングを解釈しません。そのため、「2.0」は「1.0」よりも後のバージョンと見なされません。

<!-- AIR 2 or earlier --> 
<version>1.23 Beta 7</version>

AIR 2.5 以降のバージョンでは、versionNumber エレメントにアプリケーションのバージョンを指定します。version エレメントは使用されなくなりました。versionNumber の値を指定するとき、一連の数値をドットで 3 つまで区切って指定する必要があります。例えば、「0.1.2」のようにします。バージョン番号の各セグメントには、3 桁までの数字を指定できます(つまり、「999.999.999」が、許可される最大のバージョン番号になります)。番号に 3 つのセグメントをすべて含める必要はありません。「1」や「1.0」なども有効なバージョン番号です。

versionLabel エレメントを使用して、バージョンのラベルを指定することもできます。バージョンラベルを追加すると、AIR アプリケーションインストーラーのダイアログ画面などに、バージョン番号の代わりに表示されます。

<!-- AIR 2.5 and later --> 
<versionNumber>1.23.7<versionNumber> 
<versionLabel>1.23 Beta 7</versionLabel>

メインウィンドウプロパティ

デスクトップで AIR によってアプリケーションが起動されると、ウィンドウが作成され、メイン SWF ファイルまたは HTML ページが読み込まれます。AIR では、このアプリケーションの初期ウィンドウの最初の外観と動作を制御するために、initialWindow エレメントの子エレメントが使用されます。

  • contentinitalWindow エレメントの子である content 内のメインアプリケーション SWF ファイル。デスクトッププロファイルで対象デバイスを指定するとき、SWF または HTML ファイルを使用できます。

    <initialWindow> 
        <content>MyApplication.swf</content> 
    </initialWindow>

    ファイルは AIR パッケージに含める必要があります(ADT または IDE を使用します)。アプリケーション記述子内の名前を参照するだけでは、ファイルはパッケージに自動的には取り込まれません。

  • depthAndStencil — 深度またはステンシルバッファーを使用する場合に指定します。通常、これらのバッファーは 3D コンテンツを操作する際に使用します。

    <depthAndStencil>true</depthAndStencil>
  • height — 初期ウィンドウの高さ。

  • maximizable — ウィンドウを最大化するシステムクロムを表示するかどうかを指定します。

  • maxSize — 使用できる最大サイズ。

  • minimizable — ウィンドウを最小化するシステムクロムを表示するかどうかを指定します。

  • minSize — 使用できる最小サイズ。

  • renderMode — AIR 3 以降では、デスクトップアプリケーションに関して、レンダリングモードを auto、cpu、direct または gpu に設定できます。これより前のバージョンの AIR の場合、デスクトッププラットフォームでは、この設定は無視されます。実行時に renderMode の設定を変更することはできません。

    • auto — 基本的に cpu モードと同じです。

    • cpu — 表示オブジェクトがレンダリングされコピーされて、ソフトウェア内のメモリが表示されます。StageVideo は、ウィンドウがフルスクリーンモードの場合にのみ使用できます。Stage3D はソフトウェアレンダラーを使用します。

    • direct — 表示オブジェクトはランタイムソフトウェアによってレンダリングされますが、レンダリングされたフレームをコピーしてメモリを表示する処理(ブリッティング)はハードウェアによって高速化されます。StageVideo が使用できます。Stage3D は、可能であればハードウェアアクセラレーションを使用します。ウィンドウの透明化が true に設定されている場合、ウィンドウはソフトウェアによるレンダリングおよびブリッティングに「フォールバック」します。

      注意: Flash コンテンツの GPU アクセラレーションを、モバイルプラットフォーム向けの AIR で利用するには、renderMode="gpu" ではなく renderMode="direct"(Stage3D)を使用することをお勧めします。Adobe で公式にサポートおよび推奨している Stage3D ベースのフレームワークは、Starling(2D)および Away3D(3D)です。Stage3D および Starling/Away3D について詳しくは、http://gaming.adobe.com/getstarted/ を参照してください。
    • gpu — ハードウェアアクセラレーションが使用可能な場合は使用されます。

  • requestedDisplayResolution — 高解像度画面を搭載した MacBook Pro コンピューターで標準解像度モードと高解像度モードのどちらを使用するのかを指定します。その他のすべてのプラットフォームでは、この値は無視されます。この値が standard の場合は、ステージの各ピクセルが、画面上の 4 ピクセルでレンダリングされます。この値が high の場合は、ステージの各ピクセルが、画面上の 1 つの物理的なピクセルに対応します。指定した値は、すべてのアプリケーションウィンドウで使用されます。デスクトップ AIR アプリケーションに対して(intialWindow エレメントの子としての)requestedDisplayResolution エレメントを使用することは、AIR 3.6 以降で可能です。

  • resizable — ウィンドウサイズを変更するシステムクロムを表示するかどうかを指定します。

  • systemChrome — 標準のオペレーティングシステムウィンドウの装飾を使用するかどうかを指定します。実行時にウィンドウの systemChrome の設定を変更することはできません。

  • title — ウィンドウのタイトル。

  • transparent — ウィンドウを背景とアルファブレンドするかどうかを指定します。透明化が有効な場合、ウィンドウではシステムクロムを使用できません。実行時にウィンドウの transparent の設定を変更することはできません。

  • visible — ウィンドウの作成後すぐに表示可能にするかどうかを指定します。デフォルトでは、ウィンドウの初期状態は非表示であるので、ウィンドウが表示される前にアプリケーションでコンテンツを描画できます。

  • width — ウィンドウの幅。

  • x — ウィンドウの水平位置。

  • y — ウィンドウの垂直位置。

デスクトップ機能

次のエレメントを使用して、デスクトップのインストールとアップデート機能を制御します。

  • customUpdateUI — アプリケーションを更新する際に、独自のダイアログを表示できます。デフォルトの false に設定すると、標準の AIR ダイアログが使用されます。

  • fileTypes — ファイルタイプを指定します。アプリケーションは、このファイルタイプを開くデフォルトのアプリケーションとして登録されます。別のアプリケーションがこのファイルタイプを開くデフォルトのアプリケーションとして指定されている場合、AIR は既存の登録をオーバーライドしません。ただし、アプリケーションは NativeApplication オブジェクトの setAsDefaultApplication() メソッドを使用して、実行時に登録をオーバーライドできます。ユーザーの許可を確認してから、既存のファイルタイプの関連づけをオーバーライドすることをお勧めします。

    注意: アプリケーションをキャプティブランタイムバンドルとしてパッケージ化する場合は(-bundle ターゲットを使用)、ファイルタイプの登録は無視されます。特定のファイルタイプを登録するには、登録を行うインストーラープログラムを作成する必要があります。
  • installFolder — アプリケーションのインストール先となる標準のアプリケーションインストールフォルダーへの相対パスを指定します。この設定を使用して、カスタムフォルダー名を指定できます。また、共通フォルダー内に複数のアプリケーションをグループ化することもできます。

  • programMenuFolder — Windows のすべてのプログラムメニューのメニュー階層を指定します。この設定を使用して、共通メニュー内に複数のアプリケーションをグループ化できます。メニューフォルダーを指定しない場合、アプリケーションのショートカットはメインメニューに直接追加されます。

サポートされるプロファイル

デスクトップのみに対応するアプリケーションの場合、サポートされるプロファイルリストからそのプロファイルを除外することで、別のプロファイル内のデバイスへのインストールを防ぐことができます。アプリケーションが NativeProcess クラスまたはネイティブ拡張を使用する場合、extendedDesktop プロファイルをサポートする必要があります。

supportedProfile エレメントがアプリケーション記述子の外にある場合、アプリケーションは定義済みのプロファイルすべてをサポートすると見なされます。アプリケーションを特定のプロファイルのリストに制限するには、プロファイルを空白で区切ってリストします。

<supportedProfiles>desktop extendedDesktop</supportedProfiles>

desktop および extendedDesktop プロファイルでサポートされている ActionScript クラスの一覧については、様々なプロファイルの機能を参照してください。

必要なネイティブ拡張

extendedDesktop プロファイルをサポートするアプリケーションでは、ネイティブ拡張を使用できます。

アプリケーション記述子で、AIR アプリケーションが使用するすべてのネイティブ拡張を宣言します。次の例に、2 つの必須のネイティブ拡張を指定するシンタックスを示します。

<extensions> 
     <extensionID>com.example.extendedFeature</extensionID> 
    <extensionID>com.example.anotherFeature</extensionID> 
</extensions>

extensionID エレメントは、拡張記述ファイルの id エレメントと同じ値です。拡張記述ファイルは、extension.xml という名前の XML ファイルです。これは、ネイティブ拡張開発者が提供する ANE ファイル内にパッケージ化されています。

アプリケーションアイコン

デスクトップでは、アプリケーション記述子に指定したアイコンは、アプリケーションファイル、ショートカットおよびプログラムメニューのアイコンとして使用されます。アプリケーションアイコンは、16 × 16、32 × 32、48 × 48 および 128 × 128 ピクセルの PNG 画像のセットとして用意する必要があります。アプリケーション記述ファイルの icon エレメントで、アイコンファイルへのパスを指定します。

<icon> 
    <image16x16>assets/icon16.png</image16x16> 
    <image32x32>assets/icon32.png</image32x32> 
    <image48x48>assets/icon48.png</image48x48> 
    <image128x128>assets/icon128.png</image128x128> 
</icon> 

特定のサイズのアイコンを用意していない場合は、その次に大きなサイズが使用され、画面に合うようにサイズが調整されます。アイコンを用意しない場合は、デフォルトのシステムアイコンが使用されます。

無視される設定

デスクトップのアプリケーションは、モバイルプロファイル機能に適用されるアプリケーション設定を無視します。次の設定が無視されます。

  • android

  • aspectRatio

  • autoOrients

  • fullScreen

  • iPhone

  • renderMode(AIR 3 より前)

  • requestedDisplayResolution

  • softKeyboardBehavior