一个客户要求我将一堆swfs捆绑成一个可以根据命令加载/播放它们的主文件。使用loader获取外部swfs足够简单;但是,他们使用的广告服务器不支持多个文件。
我的问题是:是否有可能将这些子swf捆绑到主swf中,使它们不再是"外部文件",广告服务器可以被赋予单个swf?
将它们导入库不起作用,因为它会剥离脚本(对吗…?)。
谢谢!
不不不不不不不不不(对所有其他答案/评论/任何)!!!!
[Embed(source='someswf.swf', mimeType='application/octet-stream')]
public class SomeSWF extends flash.utils.ByteArray {
}
:
var loader:Loader = new Loader();
// add your listeners as such.
loader.loadBytes(new SomeSWF());
那么你就可以使用标准编译器将你的文件捆绑在一起。这里需要注意的是,所有的主文件必须有不同的名称,Flash使用主精灵来处理applicationDomain——因此,如果你走这条路,请确保以不同的方式命名所有的舞台类:
class SomeSprite_XXXXXXXX extends Sprite {
// GENERATE YOURLOADER SWFS HERE
public SomeSprite_XXXXXXXXXXXX() {
// load manifest file
// provide api to the ad to load swfs
}
}