| パッケージ | flash.net |
| クラス | public final class ObjectEncoding |
| 継承 | ObjectEncoding Object |
| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
オブジェクトエンコーディングは、AMF(Action Message Format)によるオブジェクトの表現方法を制御します。Flash Player は AMF を使用することで、アプリケーションとリモートサーバとの間で効率的に通信を行えるようにします。AMF では、リモートプロシージャコールはコンパクトなバイナリ表現にエンコードされます。このバイナリ表現は、HTTP/HTTPS プロトコルまたは、Flash Media Server が使用する RTMP/RTMPS プロトコルで転送可能です。オブジェクトとデータ値は、このバイナリ形式内に直列化されます。これは通常、XML などの他の表現よりもコンパクトです。
Adobe AIR および Flash Player 9 では、AMF3 および AMF0 の 2 つの異なる形式で直列化を実行できます。 AMF3 はデフォルトの直列化形式で、ActionScript 3.0 で使用されます。ActionScript 1.0 および 2.0 で使用される AMF0 と比べて様々な利点があります。 AMF3 では、ネットワーク経由でのデータの送信が AMF0 より効率化されています。 AMF3 は、int オブジェクトと uint オブジェクトの整数としての送信と、ByteArray、XML、IExternalizable などの、ActionScript 3.0 でのみ使用できるデータ型をサポートしています。AMF3 は、ActionScript 3.0 で、Flex 2 などの AMF3 エンコードを使用するサーバーを使用している場合にのみ使用できます。
ByteArray、FileStream、NetConnection、NetStream、SharedObject、Socket、URLStream の各クラスには、objectEncoding プロパティが含まれます。このプロパティには ObjectEncoding クラスから定数が割り当てられます。 objectEncoding プロパティの動作は、オブジェクトによって異なります。各クラスの objectEncoding プロパティの説明に、この動作についての詳細な説明があります。
| プロパティ | 定義元 | ||
|---|---|---|---|
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。 | Object | |
| dynamicPropertyWriter : IDynamicPropertyWriter [静的]
動的オブジェクトの動的プロパティの直列化をさらに細かく制御できます。 | ObjectEncoding | ||
![]() | prototype : Object [静的]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。 | Object | |
| 定数 | 定義元 | ||
|---|---|---|---|
| AMF0 : uint = 0 [静的]
オブジェクトが ActionScript 1.0 および 2.0 の Action Message Format 形式を使用して直列化されることを指定します。 | ObjectEncoding | ||
| AMF3 : uint = 3 [静的]
オブジェクトが ActionScript 3.0 の Action Message Format 形式を使用して直列化されることを指定します。 | ObjectEncoding | ||
| DEFAULT : uint = 3 [静的]
現在のランタイムにデフォルト(最新)の形式を指定します(Flash® Player または Adobe® AIR®)。 | ObjectEncoding | ||
| dynamicPropertyWriter | プロパティ |
dynamicPropertyWriter:IDynamicPropertyWriter| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
動的オブジェクトの動的プロパティの直列化をさらに細かく制御できます。このプロパティがデフォルト値の null に設定されている場合、動的プロパティはネイティブコードを使用して直列化されます。これにより、値が関数である動的プロパティを除くすべての動的プロパティが書き込まれます。
この値は、ダイナミックオブジェクト (ダイナミッククラス内で宣言したオブジェクト) のプロパティに対して、または new 演算子を使用して宣言したオブジェクトに対してのみ、呼び出されます。
このプロパティを使用して、動的オブジェクトのプロパティの直列化からの除外、動的オブジェクトのプロパティへの値の書き込み、または新しいプロパティの作成を実行できます。これらの操作を実行するには、IDynamicPropertyWriter インターフェイスを実装するオブジェクトにこのプロパティを設定します。詳細については、IDynamicPropertyWriter インターフェイスを参照してください。
public static function get dynamicPropertyWriter():IDynamicPropertyWriter public function set dynamicPropertyWriter(value:IDynamicPropertyWriter):void関連項目
| AMF0 | 定数 |
public static const AMF0:uint = 0| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
オブジェクトが ActionScript 1.0 および 2.0 の Action Message Format 形式を使用して直列化されることを指定します。
| AMF3 | 定数 |
public static const AMF3:uint = 3| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
オブジェクトが ActionScript 3.0 の Action Message Format 形式を使用して直列化されることを指定します。
| DEFAULT | 定数 |
public static const DEFAULT:uint = 3| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
現在のランタイムにデフォルト(最新)の形式を指定します(Flash® Player または Adobe® AIR®)。オブジェクトエンコーディング制御は Flash Player 9 以降および Adobe AIR でのみ使用できるので、使用される最も古い形式は ActionScript 3.0 対応の Action Message Format 形式ということになります。
たとえば、オブジェクトの objectEncoding プロパティが ObjectEncoding.DEFAULT に設定されている場合は、AMF3 エンコーディングが使用されます。将来、Flash Player または Adobe AIR の後のバージョンで新しい AMF バージョンが導入され、コンテンツを再パブリッシュすると、アプリケーションはその新しい AMF バージョンを使用します。この定数は、以前のバージョンの Flash Player との相互運用性について特に注意する必要がない場合に限り使用できます。
このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート
現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/flash/net/ObjectEncoding.html