每个本机扩展都包含一个扩展描述符文件。此 XML 文件指定有关该扩展的信息,如扩展描述符、名称、版本号以及该扩展可以运行的平台。
创建扩展时,应根据详细架构
本机扩展描述符文件
编写扩展描述符文件。
例如:
<extension xmlns="http://ns.adobe.com/air/extension/3.5">
<id>com.example.MyExtension</id>
<versionNumber>0.0.1</versionNumber>
<platforms>
<platform name="Android-ARM">
<applicationDeployment>
<nativeLibrary>MyExtension.jar</nativeLibrary>
<initializer>com.sample.ext.MyExtension</initializer>
</applicationDeployment>
</platform>
<platform name="iPhone-ARM">
<applicationDeployment>
<nativeLibrary>MyExtension.a</nativeLibrary>
<initializer>MyExtensionIntializer</initializer>
</applicationDeployment>
</platform>
<platform name="default">
<applicationDeployment/>
</platform>
</platforms>
</extension>
在创建扩展描述符文件时,请考虑以下信息。
扩展 ID
<id>
元素的值与以下情况中使用的值相同:
有关命名扩展 ID 的最佳做法,请参阅
扩展 ID
。
版本号
<versionNumber>
元素的值用于指定扩展的版本。版本号的一个重要用途是用于保持设备绑定扩展的向后兼容性。请参阅
本机扩展向后兼容性
。
平台
您还可以如
面向多种平台
中所述编写面向多种平台的本机扩展。
如
扩展在运行时的提供方式
中所述,扩展可以是应用程序绑定或设备绑定的,具体取决于平台。
对于每个目标平台,在扩展描述符文件中提供一个
<
platform
>
元素。
<platform>
元素的
name
属性指定目标平台,如
iPhone-ARM
或
Windows-x86
。应用程序绑定扩展还可以指定
default
作为
name
属性的值。此值指示该扩展是一个仅 ActionScript 扩展;该扩展没有本机代码库。
当使用应用程序绑定扩展的 AIR 应用程序运行时,AIR 执行以下操作:
描述符命名空间
描述符文件的根
<extension>
元素中指定的命名空间决定扩展所需的 AIR SDK 版本。命名空间只是其中一个因素,它与 SWF 版本一起决定能否在 AIR 应用程序中使用扩展。AIR 应用程序描述符命名空间必须大于或等于扩展描述符命名空间。
扩展命名空间值
|
兼容的 AIR 版本
|
ANE SWF 版本
|
ns.adobe.com/air/extension/2.5
|
AIR 3+
|
13
|
ns.adobe.com/air/extension/3.1
|
AIR 3.1+
|
14
|
ns.adobe.com/air/extension/3.2
|
AIR 3.2+
|
15
|
ns.adobe.com/air/extension/3.3
|
AIR 3.3+
|
16
|
ns.adobe.com/air/extension/3.4
|
AIR 3.4+
|
17
|
ns.adobe.com/air/extension/3.5
|
AIR 3.5+
|
18
|
ns.adobe.com/air/extension/3.6
|
AIR 3.6+
|
19
|
ns.adobe.com/air/extension/3.7
|
AIR 3.7+
|
20
|
注:
平台选项 (platform.xml) 文件需要
ns.adobe.com/air/extension/3.1
或更高版本的命名空间。如果您使用
‑platformoptions
标志来打包 ANE,则必须指定
ns.adobe.com/air/extension/3.1
或更高版本以及高于或等于 14 的 SWC 版本。某些平台选项文件功能需要更高版本的 AIR 命名空间和 SWF。
|
|
|