Adobe AIR 2.7 開発者向けリリースノート対象製品
Adobe AIR 2.7 開発者向けリリースノート
Adobe AIR 2.7 開発者向けリリースノートをご利用いただき、誠にありがとうございます。このアップデートには、iOS での高度なパフォーマンスとデバッグワークフロー、メディア測定 API、音声エコー除去機能 API と、セキュリティ、安定性、パフォーマンスおよびデバイスの互換性に関するバグ修正が含まれます。
AIR ランタイムの必要システム構成
|
Windows
|
Macintosh
|
Android
|
iOS
|
プロセッサー
|
最小要件:Intel® Pentium® III 1 GHz 以上。推奨要件:Pentium 4 2 GHz 以上
|
インテルCore™ Duo 1.83GHz以上のプロセッサー
|
ARMv7 プロセッサー(ベクトル FPU 搭載)550 MHz 以上、OpenGL ES2.0、H.264 および AAC ハードウェアデコーダー
|
iPod Touch 第 4 世代、iPhone 3GS および iPhone 4、iPad
|
オペレーティングシステム
|
Microsoft® Windows® XP Home、Professional または Tablet PC Edition(各 64 bit 版を含む)SP2 または SP3、Windows Server® 2003、Windows Vista® Home Premium、Business、Ultimate または Enterprise(各 64 bit 版を含む)SP1、Windows 7(64 bit 版を含む)
|
Mac OS X 10.4、10.5 および 10.6
|
Google Android™ 2.2、2.3 および 3.0
|
iOS 4 以降
|
メモリ
|
最小要件:512 MB の RAM。推奨要件:1 GB の RAM
|
最小要件:512 MB の RAM。推奨要件:1 GB の RAM
|
256 MB の RAM
|
上記デバイスで利用可能な容量
|
注意:Linux デスクトップディストリビューションでは、AIR 2.7 はサポートされません。ユーザーは AIR 2.6 以前のアプリケーションをインストールして実行できますが、AIR 2.7 のインストールまたは AIR 2.7 への更新を行うことはできません。
AIR 2.7 の新機能
- SD への AIR ランタイムのインストール - この機能を使用すると、エンドユーザーが Android デバイスの SD カードに AIR ランタイムをインストールまたは移動して、電話機の記憶領域を解放することができます。
- iOS のパフォーマンス向上 - ランタイムが最適化され、開発者が iOS でよりパフォーマンスに優れたアプリケーションを提供できるようになりました。
- メディア測定 - ビデオを容易に測定できるようになりました。Adobe AIR 2.7 または Flash Player 10.3 で Adobe® SiteCatalyst® を使用して、開発者はわずか 2 行のコードで、スタンドアロンアプリケーションまたは Web サイトのビデオ解析を実装できます。 解析ソリューションプロバイダーは、新しいオープン API のセットを使用して、実装プロトコルや配信プロトコルにかかわらず、一貫したビデオ解析を簡単に実装できます。 AIR および Flash Player 用メディア測定機能により、企業は、自社のビデオコンテンツの配信状況、視聴者の層、ビデオの再生量をリアルタイムに集計したレポートを作成できます。 なお、このリリース時点では、iOS の Packager ではメディア測定を使用できません。
- 音声エコー除去 - AIR 2.7 を使用すると、開発者は、テレフォニー、ゲーム内音声チャット、グループ会議アプリケーションなどの、ハイクオリティのオーディオ機能を備えるリアルタイムオンラインコラボレーションのエクスペリエンスを、デスクトップ OS のブラウザーの外側に作成できます。開発者は、様々なマイク入力レベルの音声エコー除去、ノイズ抑制、音声アクティビティ検知、自動補正機能を利用できます。エンドユーザーは、ヘッドセットなしで、ハイクオリティのオーディオによってスムーズな通話を行うことができます。 この機能は、デスクトッププラットフォームのみで利用できます。
- 拡張 HTMLLoader API - AIR 2.7 では、開発者はスタンドアロンデスクトップアプリケーション内での HTML コンテンツにおけるクリック可能リンクの動作をより詳細に制御できます。この機能によって、コンテンツ発行者は、マガジンビューアや ebook リーダーなどのデスクトップアプリケーション内で直接、シームレスな Web リンクスタイルのナビゲーションを実現できます。
- iOS のインタープリターモード - この機能は、AIR SDK の一部である AIR Developer Tool(ADT)で、iOS 向けにインタープリターモードを有効にすることで、反復的なテストとデバッグのワークフローを効率化するものです。開発者は ADT を使用して、iOS アプリケーション向けのテストおよびデバックの処理中にコードをコンパイルできます。テストおよびデバック処理の速度が大幅に向上するので、開発者は、テストおよびデバッグのサイクルのたびにコードのコンパイル終了を待つ必要がなく、アプリケーションの改善により多くの時間を使うことができます。SD への AIR ランタイムのインストール - この機能を使用すると、エンドユーザーが Android デバイスの SD カードに AIR ランタイムをインストールまたは移動して、電話機の記憶領域を解放することができます。
メディア測定機能
ビデオの測定が簡単になりました。AIR 2.7 と Adobe® SiteCatalyst® を使用して、開発者はわずか 2 行のコードで、ビデオ解析を実装できます。 他の解析ソリューションプロバイダーも、この新しいオープン API を使用して、実装プロトコルや配信プロトコルのタイプにかかわらず、一貫したビデオ追跡メカニズムを容易に実装できます。AIR および Flash Player 用ディア測定機能により、企業は、コンテンツの配信状況、視聴者の層、メディアの再生量を明確に把握できます。
特に、AIR 2.7 では、配信プロトコルや NetStream オブジェクトの処理方法にかかわらず、企業が特定のビデオの状態を把握できる、新しいイベントとプロパティが導入されています。また、静的メソッド経由でページのドメイン URL を受信することもできます。
修正内容は次の 4 つに分類されます。
- 拡張再生イベント
- NetStream 監視
- 拡張 NetStreamInfo
- ページのドメイン URL
新しい API を使用するには、SWF バージョン 12 以降が必要です。ムービーのパブリッシュ先が SWF 12 であることを確認してください。また、新しい playerglobal.swc を使用してオーサリング環境を設定する必要があります。
拡張再生イベント
拡張再生イベントの目的は、ビデオ再生に使用される配信メカニズム(プログレッシブダウンロード、RTMP ストリーミングまたは新規に追加された HTTP ストリーミング)にかかわらず、同じイベントを送出することです。以前のバージョンでは、プログレッシブダウンロードは、RTMP ストリーミングによってトリガーされる NetStream 再生イベントの一部をトリガーしませんでした。NetStream.Play.Complete、NetStream.Pause.Notify、NetStream.UnpauseNotify の各イベントがこのようなケースに当てはまりました。
現在は、プログレッシブ再生の場合に、Flash Player 10.3 によって NetStream.Pause.Notify、NetStream.Unpause.Notify および NetStream.Play.Complete が送出されます。
さらに、プログレッシブ、RTMP ストリーミングおよび HTTP ストリーミング向けに、NetStream.SeekStart.Notify が追加されました。このイベントは、シークの開始時に Flash Player によって必ず送出されます。info オブジェクトには、「Start Seeking seek_time」という説明の文字列が含まれます。NetStream.SeekStart.Notify は常に NetStream.Seek.Notify よりも先に送出されます。
NetStream 監視
新しい NetMonitor クラスが追加されました。このクラスには 2 つの機能があります。まず、単一のメソッド listStreams() が含まれています。このメソッドは、NetStream オブジェクトのベクターを返します。2 つ目に、NetMonitor クラスは、NetStream オブジェクトの新規作成時に、netStreamCreate タイプの NetMonitorEvent を送出します。
一般的な使用シナリオは次のとおりです。
var monitor:NetMonitor = new NetMonitor(); var streams:Vector<NetStream> = monitor.listStreams(); monitor.addEventListener(NetMonitorEvent.NET_STREAM_CREATE, netStreamCreate); private function netStreamCreate(e:NetMonitorEvent):void { // the new NetStream is e.netStream}
NetStream 上でデータメッセージが受信されると、Flash Player によって、NetStream.client オブジェクト上の対応するメソッドが呼び出されます。このようなデータメッセージには、onMetaData、onXMPData などが含まれます。NetStream 上でデータメッセージが受信されると、Flash Player Wasabi によって新しい NetDataEvent が送出されます。これには、このイベントを受信できる複数のイベントリスナーを容易に追加できるという利点があります。この使用法は非常に簡単です。
var netConnection:NetConnection = new NetConnection(); netConnection.connect(null); var netStream:NetStream = new NetStream(netConnection); netStream.addEventListener(NetDataEvent.MEDIA_TYPE_DATA, onMediaData); private function onMediaData(e:MediaDataEvent):void { // e.timestamp: Timestamp of the message // e.info: Message object // e.info.handler: Handler name such as onMetaData, etc. // e.info.args:Array of arguments}
拡張 NetStreamInfo
NetStreamInfo クラスに次のプロパティが追加されました。
- metadata:Object - 再生中のメディアに関連付けられた最新のメタデータオブジェクト。
- xmpData:Object - 再生中のメディアに関連付けられた最新の XMP データオブジェクト。
- uri:String - NetConnection.connect() の URI。
- resourceName:String - NetStream.play() のリソース名。このプロパティは、プログレッシブダウンロードの場合は完全な URL、HTTP ストリーミングの場合は null で構成されます。
- isLive():Boolean - 再生中のメディアが録画かライブかを示します。この値は RTMPx ストリーミングにのみ関連します。プログレッシブダウンロードまたは HTTP ストリーミングの場合は、false が返されます。
ページのドメイン URL
Security クラスに、含まれている HTML ページのドメインを取得するための新しい静的メソッドが追加されました。セキュリティ上の理由で、このメソッドは完全な URL は返さず、http://www.example.com のようなページのドメインのみを返します。
ExternalInterface を使用してコンテナの URL を取得することもできますが、この新しいメソッドには次のような利点があります。
1. ExternalInterface が動作するのは、JavaScript が有効の場合のみです。
2. ExternalInterface では、allowScriptAccess を、HTML ラッパーで許可された値に設定する必要があります。
3. pageDomain メソッドは、ページの URL と SWF の URL が異なるドメインの場合にも動作します(一方、以前は ExternalInterface が動作するためには、allowScriptAccess="always" である必要がありました)。
詳しくは、ActionScript 3 リファレンスガイドを参照してください。
音声エコー除去機能
音声エコー除去機能(AEC)は、様々なマイク入力レベルの音声エコー除去、ノイズ抑制、音声アクティビティ検知、自動補正機能を提供できる、単純な拡張 Microphone クラスによって実行されます。この機能は、Microphone クラスの静的メソッドを使用してインスタンス化され、拡張マイク設定を行うための追加プロパティを提供します。詳しくは、ActionScript 3 リファレンスガイドを参照してください。
この機能は、デスクトッププラットフォームのみで利用できます。
拡張 HTMLLoader 実装
AIR 2.7 デスクトップより、開発者は HTMLLoader コントロールでロードされたページのライフサイクルをより詳細に制御できます。AIR 2.7 では、(ユーザー入力またはプログラムによって)他のページに移動するとき、実際のナビゲーションの *前に* 追加の位置変更イベントが送出されます。開発者は、このイベントを監視して、ロードされる場所に基づいてアクションを実行したり、新しい場所へのナビゲーションを阻止したりできます。これはデスクトップのみの機能です。詳しくは、LocationChangeEvent に関するドキュメントを参照してください。
iOS 用インタープリターモード
この機能は、AIR SDK の一部である AIR Developer Tool(ADT)で、iOS 向けにインタープリターモードを有効にすることで、反復的なテストとデバッグのワークフローを効率化するものです。開発者は ADT を使用して、iOS アプリケーション向けのテストおよびデバックの処理中にコードをコンパイルできます。テストおよびデバック処理の速度が大幅に向上するので、開発者は、テストおよびデバッグのサイクルのたびにコードのコンパイル終了を待つ必要なく、アプリケーションの改善により多くの時間を使うことができます。
Adobe AIR バージョン
このプログラムで利用できる AIR 2.7 デスクトップの最終バージョンは、2.7.0.1947 です。
インストールとアンインストール
インストーラーのトラブルシューティングについては、次の TechNote を参照してください。
http://kb2.adobe.com/jp/cps/403/kb403150.html
インストールに関する TechNote の確認後、依然として問題が解決しない場合は、インストールに関するフォーラムにアクセスして、質問したり、他のソリューションを確認したりしてください。
AIR のインストールに関するフォーラム:http://forums.adobe.com/community/air/installation
解決された問題
- FullScreenSourceRect プロパティが、Android 3.0 上の AIR アプリケーションは反映されません。(2834015)
- ソケットが AIR iOS で動作しません。(2839237)
- Android 3.0 でのデバイスのデバッグは不安定です。(2796338)
- Android アプリケーションのアプリケーション ID に 2 つ以上のドットが含まれる場合、またはアプリケーション ID の最初の文字がダッシュで始まる場合、Android アプリケーションをパッケージ化すると、Flash Builder がクラッシュまたはハングします。(2821873)
- Motorola および HTC の複数のモデルを含む一部のデバイスで、誤った screenDPI 情報が返されていた問題が修正されました。この問題を修正するために、デバイスからスクリーン DPI データを取得する Android API が別の API に(「DisplayMetrics.xdpi」ではなく「DisplayMetrics.densityDpi」に)移行されました。 densityDpi では、低解像度の場合は 120、中解像度の場合は 160、高解像度の場合は 240 という量子化された dpi 値が返されます。 (2832023、2876332)
- AIR で、バッファーが保持されているとビデオが 4 ~ 5 秒遅れて再生されます。(2844142)
- デバッガーが未接続の場合、AIR デバッグアプリケーションがハングします。(2855423)
- NVIDIA Tegra 2 デバイスで、一部のビデオの再生時に画像の乱れが発生します。(2840034)
- AIR iOS で Speex を使用してエンコードされたオーディオが出力されません。(2821150)
- AIR iOS では、コーデックを Speex ループバックに設定できません。(2778326)
- iOS デバイスで、アプリケーション(デバッグ swf)の起動に時間がかかります。(2815789)
- 高解像度 iPhone 4 では、softKeyboardRect によって返されるサイズは実際の半分です。(2823706)
- URLRequest にパラメーターが含まれる場合、URLRequest へのナビゲーションが動作しません。(2858992)
- Screen.mainScreen.bounds で実際は 0,0,640,960 が正しい場合に、0,-480,960,480 が返されます。(2852431)
- デバッグ swf を debug-ipa にパッケージ化すると、ld64 の実行時にコンパイルが失敗します。(2806767)
- iOS のジオロケーションが、無効になっていても動作します。(2860218)
- 最新の AIR 2.7 を使用して IPA をコンパイルすると、JVM が 1.5 GB 以上の RAM を使用してクラッシュします。(2865475)
- bufferTime=0 の場合に、パブリッシュされたサウンドデータが歪曲され、パブリッシュ後に 2 秒以上の遅延が発生します。(2868777)
- Mac 10.7(Lion)に AIR スタンドアロンビルドをインストールすると、OS の環境設定の言語が英語に再設定されます。(2829578)
- TextField にフォーカスがない場合、TextField.setSelection0,0 を呼び出しても無視されます。(2813498)
- appendText の実行後、キャレットが位置 0 に移動します。(2791389)
- ランタイムインストーラーが、終了コード 5 で終了します。(2809689)
- Quit Eden アプリケーションの実行に 1 分かかります。(2834167)
- Loader が、Camtasia Studio から生成された SWF ファイルをロードすると、AIR がクラッシュします。(2812781)
- ウィンドウステージからオブジェクトをドラッグ後に、Event.MOUSE_LEAVE を取得できません。(2819507)
- stage.color API は Flash Player では利用できますが、AIR では利用できません。(2821199)
- Event.RESIZE のハンドラーから stage.invalidate を呼び出すと、RENDER イベントの送出前にフレームがレンダリングされ、ENTER_FRAME が送出されます。(2777126)
- SSL 証明書の検証ロジックが逆になっています。(2806754)
- AIR 2.6.x にアップグレード後、以前は問題なく実行できた Flex デスクトップアプリケーションで、アプリケーションを開いた後にクラッシュする問題が発生するようになりました。(2844080)
- AIR 2.6 を使用してアプリケーションを起動すると、createAIRLocalSecurityTrustFileIfNeeded 実行時にアプリケーションがクラッシュします。(2869203)
既知の制限
AIR(Windows/Mac OS)
- AIR 2.6 での Acrobat 10.1 HTML インタラクティブテスト:プログレスバーで再描画の問題が発生します。(2838424)
- AIR 2.6 ではオーディオのクリッピングで問題が発生します。(2860901)
- Mac のみ:AIR コンポーネントを Mac 10.7 に ssh 経由でインストールできません。(282733)
- Windows のみ:X-domain によるサーバーへのソケット接続が拒否されました。(2852471)
- プログラムによるウィンドウサイズの設定が反映されない場合があります。(2740598)
- Window.visible=false を設定してからすぐに Window.visible=true を設定すると、正常に動作しない場合があります。(2836712)
- HTML コントロールのハイパーリンクをクリック後に、ドラッグを初期化することはできません。(2816510)
- 13 インチの 2011 MacBook Air でハードウェアアクセラレーションが有効になっている場合に、480 p 以上の Youtube ビデオの一部でビデオがスムーズに再生されません。(2845317)
- X 環境を起動しなければ、Adobe AIR アプリケーションのサイレントインストールに失敗します。(2832964)
AIR(iOS 上)
- AOT を使用して ipa-debug としてパッケージ化されたアプリケーションは、埋め込みフォントの場合に起動しません。(2877275)
- ipa-debug ターゲットでアプリケーションがクラッシュします。(2877570)
- Loader.loadBytes が iOS で失敗します。(2876657)
- 画面のロック解除後、カメラのライブストリーミングアプリケーションがフリーズします。(2827488)
- iOS デバイスで NativeProcess.isSupported が true を返します。(2872173)
- TextField が textInput イベントを送出しません。(2827733)
- spaceavailable が AOT とインタープリターモードで異なる値を返します。(2834161)
- コーデックを Speex に設定した場合に、ループバックが正常に動作しません。(2841443)
- 横長モードで開始すると、stage.orientation プロパティの値が誤って返されます。(2852193)
- アプリケーションがバックグラウンドモードになると、ソケット接続が動作しません。(2884146)
AIR(Android上)
- StageWebView 非同期機能テストケースが、Motorola Xoom では失敗します。 他の Android 3.0 デバイスでも同様の問題が発生する可能性があります。(2836505)
- Flash Builder のデバッグではデバイス上のランタイムのバージョンが正しく検出されません。 (Windows および Mac OS)(2888090) - 「いいえ」をクリックしてデバッグセッションを続行してください。「はい」をクリックしても、デバイス上の Adobe AIR はアップグレードされません。
- activate() メソッドによって、タイマーイベントハンドラーの Event.ACTIVATE が起動されません。(2814971)
- Android アプリケーションのアプリケーション ID に 2 つ以上のドットが含まれる場合、またはアプリケーション ID の最初の文字がダッシュで始まる場合、Android アプリケーションをパッケージ化すると、Flash Builder がクラッシュまたはハングします。(2821873)
- デバイスがスリープモードになり、再度起動状態となった後に、ライブストリーミングビデオおよびオーディオの同期が取れない場合があります。(2854708)
- Android の「押す」操作と「タップ」操作が適切に起動しません。(2842641)
- ステージのレンダリングの前には、方向変更イベントが受信される必要があります。デバイスの方向が変更されると、ステージの再レンダリングが完了した後に、ランタイムによって StageOrientationEvent.ORIENTATION_CHANGE イベントが送出されます。 このため、デバイスの方向に応じて動的にレイアウトを変更しコンテンツを表示するアプリケーションで、ちらつきが発生する場合があります。(2833644)
- Flash Builder 4.5 デバッグセッションが特定のデバイスに接続するときに問題が発生します。 問題が発生した場合は、接続待機中ダイアログが表示された後 1 分間待って、「続行」ボタンを押してください。 その後、デバッグセッションは開始されるはずです。(2850003)
- 画面上で 2 本以上の指を使用してパンするとクラッシュする問題が修正されました。(2839200)
フィードバック
機能のご要望については、Adobe AIR に関するアイデア提案の Web サイトで投稿と投票を受け付けています。
バグのご報告については、バグフィードバックフォームで Adobe AIR を選択してご記入ください。
問題やアイデアを議論するには、Adobe AIR フォーラムにご参加ください。
© 2011 Adobe Systems Incorporated. All rights reserved.
ドキュメント ID
(cpsid_90612)
最終更新日
2011-06-09
対象製品
