重要
:Flash Player 11.5 以降は、Adobe Access モジュールと統合されているので、更新手順(
SystemUpdater.update(SystemUpdaterType.DRM)
の呼び出し)を行う必要はありません。この更新手順が不要となるのは、次のブラウザーとプラットフォームです。
-
Flash Player 11.5 ActiveX コントロール(Windows 8 上の Internet Explorer を除くすべてのプラットフォーム)。
-
Flash Player 11.5 プラグイン(すべてのブラウザー)。
-
Adobe AIR(デスクトップおよびモバイル)。
つまり、次の場合は、更新手順を行う必要があります。
注意:
Flash Player 11.5 以降を備えたシステムでも、
SystemUpdater.update(SystemUpdaterType.DRM)
を安全に呼び出すことはできますが、何もダウンロードされません。
Flash Player で Adobe Access をサポートするには、Adobe Access モジュールが必要です。保護されたコンテンツを Flash Player が再生しようとすると、ランタイムは、Flash Player のモジュールまたは新しいバージョンをダウンロードする必要があるかどうかを示します。Flash Player では、この方法により、必要に応じて更新しないオプションが SWF 開発者に提供されます。
ほとんどの場合、保護されたコンテンツを再生するために、SWF 開発者は必要な Adobe Access モジュールまたはプレーヤーを更新します。更新するには、SystemUpdater API を使用して、最新バージョンの Adobe Access モジュールまたは Flash Player を取得します。
SystemUpdater API では、一度に 1 回の更新のみが許可されます。エラーコード 2202 は、現在のランタイムインスタンスまたは別のインスタンスで、更新が既に発生していることを示します。例えば、Internet Explorer において Flash Player のインスタンスで更新が発生している場合、Firefox で実行されている Flash Player のインスタンスでは、更新を継続することはできません。
SystemUpdater API は、デスクトッププラットフォームのみに対してサポートされています。
注意:
10.1 以前のバージョンの Flash Player では、以前のバージョンのプレーヤーでサポートされている更新メカニズム(手動のダウンロードおよび www.adobe.com からのインストールまたは Express Install)を使用します。また、AIR インストーラーは Adobe Access に必要な更新を処理しますが、SystemUpdater API をサポートしていません。
更新イベントの監視
Adobe Access モジュールの更新が必要な場合、NetStream オブジェクトはコード値
DRM.UpdateNeeded
と共に NetStatisEvent を送出します。この値は、NetStream オブジェクトでは、現在インストールされているいずれの AdobeAccess モジュールを使用しても、保護されたストリームを再生できないことを示します。このイベントを監視して、次のコードを呼び出します。
SystemUpdater.update(flash.system.SystemUpdaterType.DRM)
このコードは、プレーヤーにインストールされている Adobe Access モジュールを更新します。このモジュールに対するユーザーの同意は必要ありません。
Adobe Access モジュールが見つからない場合は、エラーがスローされます。
詳細な API ワークフロー
の手順 3 を参照してください。
注意:
10.1 以前のプレーヤーで、暗号化されたストリームで play() が呼び出された場合、コード値 NetStream.Play.StreamNotFound と共に NetStatusEvent が送出されます。以前のプレーヤーでは、そのプレーヤーでサポートされている更新メカニズム(手動のダウンロードおよび www.adobe.com からのインストールまたは Express Install)を使用します。
プレーヤーそのものの更新が必要な場合、SystemUpdater オブジェクトはコード値
DRM.UpdateNeededButIncompatible
と共に StatusEvent を送出します。プレーヤーの更新には、ユーザーの同意が必要です。アプリケーションで、ユーザーが同意し、プレーヤーの更新を開始するためのインターフェイスを提供します。StatusEvent イベントを監視し、次のコードを呼び出します。
SystemUpdater.update(flash.system.SystemUpdaterType.SYSTEM);
このコードは、プレーヤーの更新を開始します。
SystemUpdater クラスの追加のイベントは、『
Adobe Flash Platform 用 ActionScript 3.0 リファレンスガイド
』に記載されています。
プレーヤーの更新が完了すると、ユーザーは、更新を開始したページにリダイレクトされます。Adobe Access モジュールがダウンロードされ、ストリームは再生を開始できます。