先週、Flash Player と AIR 13 が公開されました。重要なセキュリティ上の変更も含まれています。
また、iOS 向けの高速パッケージエンジンが正式サポートとなりました。
新しい Flash Player のバージョンは、
- Win, Mac : 13.0.0.182
- Linux : 11.2.202.350
です。拡張サポートの対象は、予告通り今回からバージョン 13 ベースに変更されます。
AIR のバージョンは一気に 13.0.0.83 となりました。Win, Mac, Android 共通です。
新機能はだいたい以前の記事でお伝えした通りです。(その1、その2、その3)
加えて、新たに 1 つ関連するサービスの発表がありました。 Game Preview のベータ版の公開です。
Game Preview
Game Preview はゲームの無料お試し版を配布する機能です。インストール無しで体験できるのがポイントです。Google Play に誘導するリンクも表示できます。
利用できる環境は Android のみに限定されます。それでも 5 千万台以上にリーチできるサービスだということにはなります。
サービス名にゲームと付いていますが、どんな種類のアプリでも使えます。また、AIR 製のアプリでなくても大丈夫です。
とはいえ、AIR ランタイム上でプレビュー版を実行するという仕組みのため、アプリの SWF バージョンを用意することになります。AIR 開発者に使いやすいサービスなのは確かです。SWF ファイルはアドビのサイトにホストされます。
ご参考までに、Game Preview のデモが公開されています。
Game Previe用の SWF の作り方と試し方
用意するもの
- プレビュー用の SWF ファイル( SWF バージョン 23 以上、サイズ上限は 2 MB)
- SWF ファイルのダウンロード中に表示されるアイコン画像
- Google Play で使うアプリケーション ID
SWF 作成時の注意点
- プレビュー時に必要な全てのアセットを SWF ファイル内に埋め込む
- stage にアクセスできるのは Event.ADDED_TO_STAGE イベント発生後
- 使用できるスケールモードは StageScaleMode.NO_SCALE のみ
- 異なる画面サイズへの対応は SWF の責任 (ただし Game Preview が下 50 px を使用)
- Google Play への直リンを含めない(下 50 px の領域にインストールリンクが表示される)
- 広告を SWF 内に含めない
プレビュー開始用のページの準備
まず、AIR がインストールされていない環境のためのチョック用のコードです。以下の 2 行をスクリプトタグ内に記述します。
src="http://code.jquery.com/jquery-2.0.3.min.js"> src="http://dh8vjmvwgc27o.cloudfront.net/ prod/gamepreview1/scripts/DetectAIR.js">
2 行目はアドビが提供している AIR のインストールを判定するスクリプトです。コピーして使用することは禁じられており、上のアドレスから読み込むよう記述します。
後は onGamePreviewClicked のリスナーをボタンの onclick に追加するだけです。
onGamePreviewClicked の引き数にはプレビュー版の情報を指定します。下はその例です。
url:'gamepreview://xyz.com/?swf=preview.swf&img=icon.png&app=air.sample'
"xyz.com" の箇所は、プレビュー用のアセットを読み込むホスト名です。実際に公開する場合にはアドビから提供される URL を使います。
ホスト名に続いて、3 種類の値を指定します。この指定は必須です。
- swf : プレビュー用のコンテンツを含む SWF ファイルへのパス
- img : SWF ファイルのダウンロード中に表示するアイコン
- app : Google Play 上のアプリケーション ID
オプションとして、以下のパラメータも指定できます。
- aspectratio : プレビューを表示する方向。デフォルトは StageAspectRatio.ANY
- portrait: 縦長の向きに起動
- landscape: 横長の向きに起動
- any: 起動時のデバイスの向きに応じて起動
- portrait: 縦長の向きに起動
- autoorients : プレビューをデバイスの向きに応じて回転させるかを指定。デフォルトは true
- true: デバイスの向きに応じてプレビューを回転 (アスペクト比は変更されない)
- false: デバイスの向きが変わってもプレビューを回転しない
- true: デバイスの向きに応じてプレビューを回転 (アスペクト比は変更されない)
- depthAndStencil : 3D 描画用のバッファの使用の有無を指定。Context3D.configureBackBuffer() メソッドの enableDepthAndStencilの 値と一致させる。デフォルトは false
- true: 3D 描画用のバッファを確保する
- false: 3D 描画用のバッファを確保しない
- true: 3D 描画用のバッファを確保する
- debug : プレビュー起動時のエラーを検知するかを指定。デフォルトは false
- true: 発生したエラーをレポートする
- false: 発生したエラーをレポートしない
- true: 発生したエラーをレポートする
Game Preview お試し用のサンプルが提供されています。ダウンロードしたら、GamePreviewTester.as ファイル内の swfUrl の行を、テスト用のパスと書き換えて、使用します。
private var swfUrl:String = "テストに使用する SWF へのパス"
画面に表示されるデバッグモードのマークは、アドビサイトにホストされた状態では消えるようです。
このサービスのベータ版のテストに興味がある方は、こちらのアドレスにメールを送ると返事があるかもしれません。
コメントする