了解一些MXMLC的一些参数,对于深入理解FLEX有着很好的帮助.-keep-generated-actionscript尤其实用.因为可以使用他查看MXML编译成AS的代码.照样对于了解生命周期,
事件传递机制...有很大的帮助.对于Bindable关键字,在申明时,请思考是否有其他的变通解决方法,不要随意加上这个关键字.Bindable会为这个对象与之相关的部位生成大量的代码,对于
复杂的组件来说,AS文件膨胀的比较可观.
http://www.k-zone.cn/zblog/post/flex-compiler-parameter.html
加入:
-locale zh_CN -link-report=c:\flexws\Flex_web\FlexWeb_report.xml -load-externs=c:\flexws\MyLib\myLib_report.xml
会使得module编译变小很多。
【将SWF文件最优化】
如果你查看一下主程序的SWF文件和模块(Module)的SWF文件的话,你会发现它们的大小差不多。这就说明,模块的SWF和主程序SWF中有很多同样的组件定义。
Flash Player并不会保存元件(symbol)的副本。例如,如果主程序有一个Button组件而一个模块(Module)也有一个Button组件,Flash Player就不会从模块中加载Button了,因为它已经在主程序中有定义了。
使用-link-report=report.xml编译主程序,这样会创建一个链接到主程序的包含所有元件信息的文件。然后在编译模块(Module)的时候会使用那个report.xml文件。
程序代码mxmlc -load-externs=report.xml ChartModule.mxml
当ChartModule被编译的时候,所有在report.xml文件中列出的元件将会在它的SWF中省略。当我不使用report.xml文件编译ChartModule.swf的时候,它的大小是202K。而当我使用report.xml文件的时候,SWF的大小只有68K。这大大减少了模块(Module)的加载时间。
在文章的开始将到模块(Module)的时候,我提过接口有另一个作用。假设你没有使用接口而是在主程序中引用模块的类。当你运行link-report的时候,你的模块类将会出现在report.xml中。当你使用使用link-report编译模块(Module)的时候你的模块并不会包含在它自己的SWF中!起初这并不会成为一个问题,尽管主程序由于包含了模块的定义而变得很大。然而,当你更改你的模块的时候发生了什么才是重要的。如果你没有重新编译主程序,你主程序的SWF文件将会包含模块(Module)旧的定义——而不是你已经更改过的。
程序代码mxmlc -link-report=report.xml Main.mxml
mxmlc -load-externs=report.xml ChartModule.mxml
// etc.
如果你决定使用这个技术来减小模块(Module)的大小,那么就使用接口来确保终端用户使用的总是模块(Module)的最新版本。
分享到:
相关推荐
利用ant编译flex脚本,可以直接在你的程序中使用。
一个Grunt任务插件,用于编译Adobe Flex / ActionScript / MXML / FLV / etc。 Apache / Adobe Flex SDK中带有mxmlc编译器的应用程序。 入门 这个插件需要~0.4.1 如果您以前从未使用过 ,请务必查看《指南》,...
action script 3d 的例子. 直接用mxmlc编译即可~
xmlc 此应用程序旨在简化 Flex sdk,并在编译 Actionscript 时为开发人员/设计人员提供另一个工具。 注意:当前版本是我第一次尝试创建节点包。安装先安装Flex SDK 您不需要 Flex,只需要 SDK。 您可以在下载 Flex ...
5、MXMLC 编译器 a、MXML to AS 3 b、CSS to AS 3 C、AS 3 to SWF d、Asserts to SWF e、ByteCode to SWF 注:SWF运行于Flash Player 9 (必须下载flash Player 9 ) 6、控件 Button、CheckBox、...
编写一个flex的hello程序,需要flex sdk,运行mxmlc命令获得swf文件。
总是会有人做这样的事情,不管是Java还是.Net,解析类的语言总是很容易的被反编译,Flash的SWF当然也不例外。darknet放出的 Flare让人们可以在Dos/Windows,Mac OS,Linux x86,Linux x86 64-bit,Solaris x86这些平台...
FUnit是第一代利用Flex mxmlc编译器的自定义元数据功能的xUnit测试工具。 FUnit基于标签的属性模型使其成为有史以来为Flex平台创建的最直观的单元测试框架。
使用mxmlc和Ant编译Flex应用程序 25.10节. 使用ASDoc和Ant生成文档 25.11节. 使用Rake编译Flex应用程序 25.12节. 使用ExpressInstall 25.13节. 使用Flex Builder 3的Memory Profiling查看内存快照 第二十六章...
java运行依赖jar包
java运行依赖jar包
java运行依赖jar包
java运行依赖jar包
java运行依赖jar包
java运行依赖jar包
java运行依赖jar包
java运行依赖jar包
java运行依赖jar包
java运行依赖jar包
java运行依赖jar包