Recently in AIR Category

Flash Player と AIR のセキュリティアップデートが公開されました。重要な更新ということで、以前のバージョンをお使いの方は速やかにアップデートを行うことが推奨されています。

最新版のダウンロード URL はそれぞれ、

になります。

今回修正された箇所は、JPEG 読み込み時の問題点など全 7 件あります。詳細はこちらのドキュメント (英語です) をご覧ください。(Security updates available for Adobe Flash Player

あわせて、次のリリースになる Flash Player 10.1 が Mac PPC G3 をサポートする最後のバージョンになる予定であること、Flash Player 10.1 リリース後は G3 用のアップデートが行われない予定であることも発表されています。これは最新のパフォーマンス向上のための仕様が旧い PowerPC のアーキテクチャではサポートされないからとのことです。

AIR 2 ベータが Adobe Labs に公開されました。(Adobe AIR 2@Labs

ランタイムおよび SDK がこちらからダウンロードできます。(Adobe AIR 2@Labs download) Windows 2000 と Mac PowerPC を除き、AIR 1.5 と同じプラットフォームが対象になっています。

AIR 1.5 と AIR 2 は同時にインストールすることができませんのでご注意ください。アンインストールする場合、Windows では "プログラムの追加と削除" から Adobe AIR を選択、Mac の場合は /Applications/Utilities フォルダ内のアンインストーラを実行します。バグでない限り、AIR 1.5 で動く AIR アプリは AIR 2 上でも動作することにはなっています。

上記ダウンロードページからは、Dreamweaver CS3, CS4 用と、Fireworks CS4 用の AIR2 拡張機能もダウンロードできます。

Flash CS4 Professional は自分で SDK を入れ替えることになります。手順は、

  1. Flash CS4 Professional を 10.0.2 にアップデート。Help メニューからアップデートを選択すれば更新されます
  2. Flash CS4 Professional を実行中の場合は終了
  3. Flash CS4 のインストールフォルダーを開く。 Windows は "C:\Program Files\Adobe\Adobe Flash CS4\"、 Mac OS は "/Applications/Adobe Flash CS4/"
  4. ここで "AIK1.5" というフォルダが無かったら最初のステップに戻ってください
  5. "AIK1.5" フォルダを 削除するなり、別名で保存
  6. 新しく "AIK1.5" という名前でフォルダを作成
  7. ダウンロードした Adobe AIR 2 SDK を "AIK1.5" フォルダの下に展開
  8. "Adobe Flash CS4/AIK1.5/frameworks/libs/air/" フォルダから "airglobal.swc" ファイルを "Adobe Flash CS4/Common/Configuration/ActionScript 3.0/AIR1.5/" フォルダにコピー

です。

Flex の場合は、既存の Flex SDK をコピーしてから、ルートフォルダで AIR 2 の SDK を展開します。

Mac 上では旧いファイルを削除しないとアプリがクラッシュすることがあります。Flex Builder のインストールフォルダ内の /sdks/3.2.0/runtimes/air/mac/Adobe AIR.framework/Versions/1.0/Resources の下にある、MainMenu.nib, AuthDialog.nib, FlashPromptDialog.nib の削除をお勧めします。

さて、AIR 2 の新機能は先の記事でお伝えした Flash Player 10.1 のものに加えて、以下のものがあります。

  • マスストレージデバイスの検知
    USB メモリデバイスやカメラなどの接続を検知します。ファイルのアップロード用画面を自動表示するアプリなどに利用できます
  • ネイティブプロセス AIP
    OS のプロセスと標準入出力を使った通信ができます。これにより既存のアプリが利用できるようになります。(例えば "grep" コマンドを使ったファイル検索)
  • UDP のサポート
    UDP を用いたリアルタイム通信やマルチプレーヤゲームなどが開発可能です
  • ソケットサーバ機能と P2P
    AIR 2 を使ってローカルサーバを実現できます。これにより他のアプリケーションとネットワーク経由で通信することができます
    Flash Player 10 と AIR 1.5 から追加された RTMFP と違い、この機能はサーバ無しで P2P が実現できます

AIR 2 の正式なリリースは 2010 年の前半が予定されています。

その他詳細は、リリースノート (英文) をご覧ください。

MAX では AIR の次期バージョンにあたる、Adobe AIR 2 に関するアナウンスもありました。

AIR 1.5 に対する要望を元に多くの機能拡張が予定されているとのこと。今回は以下の機能が発表されました。

  • プロセス間通信 - 同一マシン上で実行されるアプリケーションと通信を行うための API が提供 (この機能を使うには AIR アプリを .exe や .dmg で配布する必要がある)
  • 外部記憶デバイスのサポート - AIR アプリから外部記憶デバイスの接続・切断を検知できる
  • ファイルオープン - ファイルと標準で関連付けられているアプリケーションを OS から起動できる
  • パフォーマンス改善 - 従来の AIR アプリそのままでも少ないメモリと CPU で実行可能
  • マイクの使用 - AIR アプリ実行中のマシンのマイクから音声を取得するための API を提供
  • 新しい入力方法 - マルチタッチ (Windows 7) とジェスチャー入力 (Windows 7, OS X 10.6) をサポート
  • 新しい WebKit - 高速化された JavaScript エンジンや、HTML5/CSS3 のサポート
  • ソケット機能強化 - ローカルサーバとしての使用が可能に

Adobe AIR のパブリックベータは今年中に公開予定とのことです。

まず、Adobe AIR 1.5.2 の Snow Leopard 対応について、AIR チームのブログによると、いまのところは以下の問題がひとつ報告されているだけで大きな問題は見つかっていないとのことです。

  • AIR SDK の bin ディレクトリから ./adl とコマンドを起動しようとするとファイルが見つからない旨のメッセージが表示され実行できない。PATH に adl を追加する、他のディレクトリからの相対パスを使う、絶対パスを使うことでこの問題を回避できる。

(話は逸れますが、AIR チームブログに紹介されている MLB.com OnBase を MLB に興味のある方にご紹介しておきます。表示が英語なのがちょっと難ですが。)

次に CS 製品についてです。公式サイトには CS3 製品のテストはされていないと記述されていますが、いくつかの製品チーム (Flash Professional, Photoshop, Illustrator, After Effects) から動作確認を行ったとのコメントが出されています。いずれも現時点での情報との前え置き付きで CS3 固有の問題は見つかっていないとのことです。

最後に、Snow Leopard 関連のテックノートが 2 つ公開されました。内容を簡単にまとめると、

1. Files may not open in original authoring application

Adobe 製品で作成したファイルをファインダーから開いたとき、別のアプリケーションが立ち上がることがある。ファイル拡張子を省略していると起きやすい。これは、Mac OS X 10.6 からファイルの関連付けの方法が変わったためとのこと。回避方法として、ファイル拡張子を使う、ファインダーからファイルとアプリケーションを関連付けを設定する等を紹介。

2. Applications crash when saving to file servers through SMB protocol

SMB プロトコルでマウントしたボリュームにファイルを保存するとアプリケーションがクラッシュすることがある。ファイルが大きいほどクラッシュしやすい。現在 Adobe は Apple と協力して対応中だが、当面の回避策としては、AFP など他のプロトコルを使いボリュームをマウントするか、一旦ローカルに保存してからリモートのフォルダに移動することを推奨。

Flash player 10.0.32.18 と Adobe AIR 1.5.2 が公開されました。どちらも、既知の脆弱性への対応及び主要なバグの修正を目的としたアップデートです。

脆弱性に関しては、今週お伝えした 2 点に対応がされています。詳細は、とりあえず英語ですが、こちらに記述されています。(Security updates available for Adobe Flash Player

最新版のダウンロード URL はそれぞれ、

です。

AIR の仕様の追加変更をいくつかご紹介します。新しい機能を使用する場合は、1.5.2 のネームスペース (xmlns="http://ns.adobe.com/air/application/1.5.2" ) を宣言します。

  • インタラクティブフルスクリーンモード (フルスクリーン表示状態でのキーボード入力をサポートするモード) で、エスケープキーを押してもフルスクリーンモードが終了しない設定を可能にするため KEY_DOWN イベントへの preventDefault をサポート
  • transparent=true が設定されたウインドウ内の HTML に読み込まれた SWF が表示されないという制限の改善
  • Capabilities.supports32BitProcesses と Capabilities.supports64BitProcesse によるシステム機能の確認
  • LocalConnection.isPerUser を使った LocalConnection に接続可能なユーザの設定。true の場合ログイン中のユーザのみ、false の場合誰でもアクセス可能。設定は Mac OS X のみで可能で、デフォルトは false。LocalConnection 使用時は常に true に設定することを推奨。他の OS では常に true になる。
  • System.disposeXML(xml:XML) メソッドの追加により、不要になった XML オブジェクトを直ぐにガーベッジコレクションの対象とすることが可能に
  • インストール画面の変更
  • Windows と Mac OS 上のネットワークタイムアウト時間が 60分に

その他の詳細情報はリリースノートがもうすぐ公開されると思いますので、そちらをご覧ください。以下の URL に公開される予定です。

Flash Player リリースノート (PDF)

Adobe AIR リリースノート

Flash Player 10.0.22.87 と AIR 1.5.1 がリリースされました。どちらもクリティカルなセキュリティ上の問題に対応するためのアップデートですので、できるだけ早く適用することをお勧めします。(http://get.adobe.com/jp/flashplayer, http://get.adobe.com/jp/air)

Flash Player 10.0.22 については、英文ですが Flash Player update available to address security vulnerabilities に対応されたセキュリティ問題の詳細が記述されています。(バッファのオーバーフローや入力検査時の問題等) ちなみに上記リンクの最後に Flash CS4 や CS3 用のデバッグプレーヤをダウンロードするためのリンクも書かれています。

その他のバグフィックスや機知の問題点についてはリリースノートをご覧ください。(Flash Player 10 Release Notes - pdf:2.1MB) 日本語で 「Flash Player 10.0.22.87 の修正点と改良点」 と書かれた箇所に 20 点ほど記述があります。あと、10.0.22.87 から Solaris サポートが追加されています。

AIR 1.5.1 は Flash Player 10.0.22 の搭載とバグフィックスが主要な変更点ですが、2 件だけ追加機能があります。

  • InvokeEvent.reason イベントにより、アプリケーションがユーザによって起動されたか、ログイン時に自動的に起動されたかを知ることができる
  • Capabilities.cpuArchitecture 属性から、コンピュータのプロセッサアーキテクチャ (「PowerPC」や「x86」などの文字列になる) を取得できる

これらの新しい機能を使用する場合は、アプリケーション記述子の名前空間の宣言を xmlns="http://ns.adobe.com/air/application/1.5.1" に更新します。

AIR 1.5.1 のリリースノートは以下の 2 つが公開されていますのでご覧ください。

開発者向け:http://www.adobe.com/support/documentation/jp/air/1_5_1/releasenotes_developers.html

ユーザ向け:http://www.adobe.com/support/documentation/jp/air/1_5_1/releasenotes_users.html

遅ればせながら。AIR 1.5 からセキュリティ上の理由により HTMLLoader の仕様が変更されています。

HTMLLoader.loadString() を使って HTML コンテンツを読み込んだ場合 (Flex では HTML.htmlText に HTML コンテンツを設定した場合)、AIR 1.1 アプリケーションは、アプリケーションサンドボックス内にコンテンツを読み込みます。そのため、読み込まれたコンテンツからは自由にローカルリソースにアクセスすることができました。

AIR 1.5 から loadString() はコンテンツをブラウザサンドボックスに読み込むように変更されています。これによって、読み込まれた HTML コンテンツから外部リソースを参照する際、ローカルリソースへのアクセスが制限されるようになります。

以上の変更は、アプリケーション記述子の名前空間を 1.5 に変更した場合のみ有効です。名前空間が 1.1 の場合には、AIR 1.5 ランタイム上でも以前と同じ動作をします。

また、AIR 1.5 アプリケーションでも、HTMLLoader.placeLoadStringContentInApplicationSandbox = true と設定すると、AIR 1.1 アプリケーションと同じ振る舞いをするようになります。ただ、安全面からお勧めはいたしません。

Linux 用 AIR 1.5 が公開されました。http://get.adobe.com/jp/air/ からダウンロードできます。

あわせて Linux 用の AIR SDK も公開されています。日本語のページはまだ更新されていないようですのでとりあえず US のサイトからどうぞ。(Adobe AIR SDK

これで AIR がサポートするプラットフォームに Fedora 8, Ubuntu 7.10, Open Suse 10.3 が追加されたことになります。他の Linux ディストリビューションでも rpm か Debian パッケージマネージャをサポートするものでは動作させることは可能だと思います。

インストール手順、既知の問題等の詳細についてはリリースノートをご覧ください。

OS に依存しない AIR アプリケーションを開発するためのベストプラクティスが US のサイトに公開されています。(Developing cross-platform Adobe AIR applications) とりあえず英文で申し訳ありませんがよろしければご覧ください。

Adobe Labs に Text Layout Framework ベータ版が公開されました。(Text Layout Framework@Labs

Flash Player 10 から新しいテキストエンジン (Flash Text Engine - FTE) とそれを扱うための flash.text.engine という新しいパッケージが追加されていますが、Text Layout Framework はその API 上に構築されたフレームワークです。高度なテキストのレイアウト機能や、テキストの選択、編集機能などが実装されています。また、マークアップ形式のデータを扱うことができます。

上のリンクのページに Flash コンテンツとして 8 つのデモが提供されていますので、まずはそちらをご覧ください。"start tour" をクリックすると最初のデモが表示されます。

Text Layout Framework を使うには実行環境として Flash Player 10 または AIR 1.5 が必要です。開発環境は、Flash CS4, Flex Builder 3.0.2, Gumbo になります。

英語版の Flash CS4 を既にお使いの場合は、こちらのページ (Downloads/Text Layout Framework@Labs) から Text Layout Component for Flash CS4 をダウンロードして、中の MXP ファイルをインストールします。これで、コンポーネントパネル内の標準コンポーネントに textLayout コンポーネントが、その他のパネルに Text Layout パネルが追加されます。

Text Layout パネルでは、テキストのいろいろな属性をパネル内で選択することでプログラムを書かなくても設定できます。使い方は、英語で恐縮ですがとりあえずは Text Layout Component for Flash CS4 Professional Overview をご覧ください。

Text Layout パネルとほぼ同等のものがオンラインでも提供されています。(Text Layout Demo@Labs

Flex Builder 3.0.2 をお使いの場合は、ダウンロードページ (Downloads/Text Layout Framework@Labs) から Text Layout Framework をダウンロード後、textLayout_core.swc, textLayout_edit.swc, textLayout_conversion.swc の 3 つのファイルを sdks\3.2.0\frameworks\libs の下にコピーします。

Text Layout Framework の使い方サンプル

ダウンロードページ (Downloads/Text Layout Framework@Labs) にある Text Layout Component Examples for Flash CS4 には ActionScript のサンプルも含まれてますので、Flash CS4 がなくてもいろいろな使い方を見ることができます。

例えば、下は Text Layout Framework を使って "Hello World" を表示する例です。

既報のとおり Adobe AIR 1.5 が公開されています。(http://get.adobe.com/jp/air/

インストールは既存の環境を上書きするため、検証環境へのインストールを行う際はご注意ください。AIR 1.5 のランタイム上でも AIR 1.0, 1.1 のアプリケーションはサポートされます。とはいえセキュリティフィックスによる仕様変更への対応は必要になるケースもあります。その他機知の制限事項についてはリリースノートをご覧ください。(air 1.5 release note - PDF:129KB)

開発環境は、Flash CS4, Flex Builder 3, Dreamweaver CS3/CS4 が利用できます。現時点で日本語環境で使える AIR 1.5 の開発ツールは Flex Builder 3 と Dreamweaver CS3 ですね。Flex Builder 3 のアップデートはヘルプメニューから「更新を検索…」を選べば処理が開始されます。Dreamweaver CS3 用の AIR 1.5 機能拡張は Tools for AIR and Ajax のページの下のほうにあるリンクからダウンロードしてください。(日本のサイトはまだ更新されていないようなので)

AIR 1.5 の SDK のダウンロードは Adobe AIR SDK から、Flex 3.2 SDK のダウンロードは Flex 3 SDK Downloads からどうぞ。

AIR 1.5 の新機能は

  • 新たに 5 ヶ国語のサポートを追加
  • Flash Player 10 のサポート
  • WebKit のバージョン更新
  • ローカルデータベースの暗号化機能追加

です。

SQLite データベースの暗号化

AIR 1.5 から SQLConnection クラスの open(), openAsync() メソッドが最後の引数に暗号化の鍵を渡せるよう変更されています。