签名
typedef void (*FREContextInitializer)(
void* extData,
const uint8_t* ctxType,
FREContext ctx,
uint32_t* numFunctionsToSet,
const FRENamedFunction** functionsToSet
);
参数
-
extData
-
指向本机扩展的扩展数据的指针。函数
FREInitializer()
会创建扩展数据。
-
ctxType
-
标识上下文类型的字符串。可根据扩展的需要定义此字符串。上下文类型可表示扩展的 ActionScript 端与本机端之间的任何约定含义。如果您的扩展不使用上下文类型,此值可以是
Null
。此值为 UTF-8 编码的字符串,以 null 字符终止。
-
ctx
-
FREContext 变量。运行时创建此值并将其传递给
FREContextInitializer()
。请参阅
FREContext
。
-
numFunctionsToSet
-
指向
unint32_t
的指针。将
numFunctionsToSet
设置为包含
functionsToSet
参数中的函数数量的
unint32_t
变量。
-
functionsToSet
-
指向 FRNamedFunction 元素数组的指针。每个元素都包含一个指向本机函数的指针,以及 ActionScript 端在 ExtensionContext 实例的
call()
方法中使用的字符串。请参阅
FRENamedFunction
。
说明
当 ActionScript 端调用
ExtensionContext.createExtensionContext()
时,运行时会调用此方法。实现此方法可执行以下操作:
-
初始化扩展上下文。初始化可能取决于
ctxType
参数中传递的上下文类型。
-
保存
ctx
参数的值,以便其可用于本机实现对
FREDispatchStatusEventAsync()
的调用。
-
使用
ctx
参数初始化上下文特定数据。此数据包括上下文特定的本机数据和上下文特定的 ActionScript 数据。
-
设置 FRENamedFunction 对象的数组。返回一个指向
functionsToSet
参数中的数组的指针。返回一个指向
numFunctionsToSet
参数中的数组元素数量的指针。
FREContextInitializer() 方法的行为取决于
ctxType
参数。ActionScript 端可将上下文类型传递给
ExtensionContext.createExtensionContext()
。然后,运行时将值传递给
FREContextInitializer()
。此函数通常使用上下文类型选择本机实现中 ActionScript 端可以调用的方法集。每个上下文类型都对应一个不同的方法集。
|
|
|