打包APK文件
FlashDevelop自动为Android项目生成了打包脚本PackageApp.bat,运行脚本就可以自动生成apk安装包。
也许读者会问:apk包到底是如何创建的?
执行项目根目录下的PackageApp.bat时,其实是在调用bat目录下的Packager.bat文件。我们使用文本编辑工具打开bat\PackageApp.bat文件,其中的命令不少,但仔细看下去会发现执行打包命令的其实只有如下一行脚本代码:
- call adt -package -target TYPE% %TARGET% %OPTIONS% %SIGNING_OPTIONS% %OUTPUT% %APP_XML% %FILE_OR_DIR%
call用来调用程序,后面是要运行的目标程序以及参数,因此,这里的主角是adt。adt是AIR SDK提供的打包脚本,位于D:\dev\flex_sdk_4.5.1\bin目录下。由于先前已将这个目录加入到系统环境变量中,因此可以直接运行。
adt最早用来创建用于桌面AIR安装包,后来也支持移动平台。打包apk时的具体格式如下:
- adt –package –target apk -storetype pkcs12 -keystore
证书路径 apk的保存路径 要嵌入的文件路径
嵌入的文件将被一同打包在APK中,主SWF文件和描述文件必须包含在内。除此之外,我们还可以将其他资源嵌在apk包中,比如程序中动态加载的SWF动画、图片等。为了方便,可以将文件放在一个目录中,将整个文件夹包含进去,FlashDevelop中的打包命令正是这样做的,将SWF文件和icon资源都放在bin目录下,然后一起打包。
了解了APK的打包原理,相信读者对打包过程已经很清楚了,这里总结如下:
编译项目,生成SWF文件。编译时,确保FlashDevelop处于Release模式下,即顶部工具栏箭头旁选项是Release。
确定是否有签名证书,如果没有,可以运行bat目录下的CreateCertificate.bat创建证书。
执行脚本PackageApp.bat脚本,选择打包方式,这里选择APK(即选项1)。
执行完毕后,项目中多了一个dist目录,里面就是我们想要的APK文件,接下来可以发布程序了。