ネイティブ関数の入力パラメーターは、ActionScript String クラスオブジェクトに対応させることができます。すべてのネイティブ関数パラメーターは FREObject 型です。そのため、ActionScript String パラメーターを操作するには、FREObject パラメーターの ActionScript String 値を取得します。その値を、対応する C 文字列変数に保存します。C API 関数の
FREGetObjectAsUTF8()
を使用します。
FREResult FREGetObjectAsUTF8(
FREObject object,
uint32_t* length,
const uint8_t** value
);
FREGetObjectAsUTF8()
を呼び出した後は、ActionScript String 値は
value
パラメーターに設定され、
length
パラメーターは value 文字列の長さをバイト単位で示します。
出力パラメーターまたは戻り値が ActionScript String クラスオブジェクトに対応する場合は、C API を使用して ActionScript String オブジェクトを作成します。FREObject 変数、文字列値および C 文字列変数内の長さ(バイト単位)へのポインターを指定します。ランタイムは ActionScript String オブジェクトを作成し、FREObject 変数を、そのオブジェクトに対応するように設定します。C API 関数の
FRENewObjectFromUTF8()
を使用します。
FREResult FRENewObjectFromUTF8(
uint32_t length,
const uint8_t* value,
FREObject* object
);
value
パラメーター文字列では、UTF-8 エンコーディングを使用し、null 終端文字を含める必要があります。
注意:
C API 関数の文字列パラメーターでは、UTF-8 エンコーディングを使用し、null 終端文字を含めます。