Flash ANE打包

一.打包ANE需要以下6个(组)文件

1. ActionScript扩展库(*.swc)
flash builder需要在编译器附带参数中加入“-swf-version 13”,否则打包ane时会出现Invalid swc file.The extension NameSpace requires the swf verison to be 13 or lower
2. 本机扩展库(*.jar)
3. 本机扩展的描述性文件(extension.xml)
<extension xmlns="http://ns.adobe.com/air/extension/2.5">
	<id>com.lang.MyAneExtension</id><!-- ane本机扩展库的id -->
	<versionNumber>1.0</versionNumber><!-- 版本号 -->
	<platforms>
		<platform name="Android-ARM">
			<applicationDeployment>
				<nativeLibrary>MyAneExtension.jar</nativeLibrary><!-- jar文件名 -->
				<initializer>com.lang.MyExtension</initializer><!-- java扩展库入口类 -->
				<finalizer>com.lang.MyExtension</finalizer><!-- java扩展库入口类结束器,结束时调用此类的dispose方法。如果没有要销毁的内容可以留空。 -->
			</applicationDeployment>
		</platform>
	</platforms>
</extension>

4. 从swc文件(第1个文件)中解压得出swf文件 (library.swf)

swc文件中包含library.swf和catalog.xml两个文件,这里我们只使用library.swf

5. 签名文件(*.p12)
正式文件需要花钱买,可以使用Flash或FlashBuilder生成开发版的签名文件
6. adt工具
adt有很多功能,我们这里用到它打包ANE的功能,这个工具在AIR或Flex的SDK中。
如果安装了flash builder,里面有sdk,比如我的sdk在
E:\Program Files\Adobe\Adobe Flash Builder 4.7\eclipse\plugins\com.adobe.flash.compiler_4.7.0.349722\AIRSDK
E:\Program Files\Adobe\Adobe Flash Builder 4.7\sdks\4.6.0
而adt工具就在其下面的bin文件夹中
我们把必须的1-5文件放在一个文件中,如下图


二.开始执行打包的程序

运行命令行(开始-运行-输入cmd 或 Win+R-输入cmd)并将其路径设置到该文件夹路径上,然后键入:
adt工具路径 -package -storetype pkcs12 -keystore .p12文件名称.p12 -storepass .p12文件的密码 -target ane 需要生成的ane的名称.ane extension.xml -swc swc名称.swc -platform 平台名称 library.swf 本机扩展库
其中-platform有以下选项:
Android-ARM.(居说这里要有".",没有点也打包成功了)
iPhone-ARM
MacOS-x86
Windows-x86

下面是一个完整的例子的写法:
E:\Program" "Files\Adobe\Adobe" "Flash" "Builder" "4.7\eclipse\plugins\com.adobe.flash.compiler_4.7.0.349722\AIRSDK\bin\adt -package -storetype pkcs12 -keystore lang.p12 -storepass 123 -target ane MyAne.ane extension.xml -swc MyAneExtensionAS.swc -platform Android-ARM. library.swf MyAneExtensionJava.jar

打包的时候可能遇到下面的错误
1、Java不是内部或外部命令,也不是批处理文件
是因为没有安装java运行时环境或adt文件路径不对。
2、Invalid swc file.The extension NameSpace requires the swf verison to be 13 or lower
flash builder需要在编译器附带参数中加入“-swf-version 13”。
方法:打开flash builder-右击扩展ane的库项目-选择“属性”-打开项目属性,如下图-选择ActionScript库编译器-在附加的编译器参数中加入如下参数
3、Could not generate timestamp: handshake alert: unrecognized_name
因为要访问国外的服务器获取时间戳,但又访问不到,访问不到的原因你懂的。解决办法:在后面加入 -tsa none,不去获取时间戳,如...-package -tsa none -storetype pkcs12 ...。
这里只说明如何打包ANE,jar和swc文件的开发可参考其它详细教程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值