我有一个flex应用程序,仅用作JavaScript的LocalConnection
API。
它运行良好,但生成的SWF文件非常大:
两者都非常大,如果static-link-runtime-shared-libraries
被禁用 - 加载swf的速度慢了近5秒,并且随机出现错误#2046
:(
启用压缩和优化,调试和预加载器已禁用。
mxml文件仅包含以下内容:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
creationComplete="main()"
width="1" height="1" usePreloader="false">
<mx:Script>
<![CDATA[
import mx.core.FlexGlobals;
import flash.net.LocalConnection;
import flash.external.ExternalInterface;
private var readyCallback:String;
private var debugCallback:String;
private var errorCallback:String;
private var receiveConnection:LocalConnection;
private var receiveCallback:String;
private var postConnection:LocalConnection;
private function main() : void {
// ...
}
// ~100 Lines of code
]]>
</mx:Script>
</mx:Application>
有人可以帮助我生成更小(和快速加载)的swf吗?
答案 0 :(得分:0)
主要问题是编写一个*.mxml
应用程序而不是一个扩展*.as
的简单基本Sprite
类,该类可以使用mxmlc
进行编译。
现在文件看起来像这样:
package {
import flash.display.Sprite;
import flash.external.ExternalInterface;
import flash.net.LocalConnection;
import flash.events.StatusEvent;
public class MyClass extends Sprite
{
// ...
}
}
现在文件大约为1.2k,加载非常快:)
非常感谢@Timofei Davydik和@Sunil D.