注意:我想保存AS3类的实际字节码,而不是它的实例!

一个类正在外部加载,并通过URLLoaderLoader.loadBytes提取。 然后从该应用程序域中提取单个类,并在项目中使用。

现在,无需保存整个Loader(通过SharedObject或其他存储方式),就可以“提取”所需类和所有依赖项的字节码,然后可以将其“注入”到空外壳或其他内容中在需要时可以重用?

#1楼 票数:1

所以你想评估(一些代码)? AS3中没有eval(),但这可能会对您有所帮助: http : //danielmclaren.com/2008/09/21/eval-in-as3-tips-for-executing-dynamic-actionscript

您也可以按照3Devil的建议将类保存在AMF中。

例:

package vos
{
    import flash.utils.ByteArray;
    import org.flixel.FlxPath;

    public class ActionVO extends Object
    {
        public var pid:uint;
        public var cid:uint;
        public var action:String;
        public var data:*;

    }
}

而您正在保存所需的共享对象的类

registerClassAlias( "org.flixel::FlxPath", FlxPath );
registerClassAlias( "org.flixel::FlxPoint", FlxPoint );
registerClassAlias( "VO::ActionVO", ActionVO );

并保存:

var byteArray:ByteArray = new ByteArray();
byteArray.writeObject(data);
shared.data.byteArray = byteArray;

..和加载:

var ba:ByteArray = shared.data.byteArray
ba.uncompress();
var vo:ActionVO = ba.readObject() as ActionVO; 

那里有vo(简单值对象类,包括更复杂的类FlxPath)

#2楼 票数:0

您可以尝试使用ByteArray.writeObject,它将保存对象属性的可逆快照。

  ask by IQAndreas translate from so

未解决问题?本站智能推荐:

1回复

是否可以从SWC库扩展一个类?[关闭]

我有一个SWC库,我需要从库中的类中派生出一个类。 可能吗?
1回复

用一个奇怪的面具将精灵绘制到位图数据中

我遇到了一个奇怪的行为,将一个精灵绘制到BitmapData中。 当直接绘制到屏幕上时,此精灵看起来不错。 但是,当将该子画面绘制到BitmapData中时,该子画面将被遮罩... 但是没有将这样的遮罩应用于该子画面! 可以通过对我正在绘制的精灵应用/不应用其他蒙版来关闭和打开此“错误蒙
6回复

有效的JavaScript代码是无效的ActionScript3.0代码?

大多数JavaScript代码也是语法上有效的ActionScript 3.0代码。 但是,有一些例外导致我的问题: JavaScript中哪些构造/功能在语法上无效? 请提供JavaScript代码( 没有使用DOM API的基本JavaScript代码)的具体示例,该代码不是有效的A
1回复

简单字节加载的programm获取运行时错误(错误#1010:术语未定义并且没有属性。)

我正在创建一个简单的程序,需要跟踪bytesLoaded和bytesTotal。 看起来一切正常,但出现运行时错误: 错误#1010:术语未定义且没有属性。 这是我的as3.0类代码:
3回复

类引用与类实例的区别

鉴于这两个对getQualifiedClassName的调用都返回相同的东西(mx:Label),如何以编程方式区分类的实例和类的引用... 换句话说,我怎么知道lab1是Label类型,而lab2是类型“Class”。 typeof()只为两者返回“object”... getQual
1回复

如何将ActionScript“类”与FlexMXML文件一起使用?

到目前为止,我已经完全被这个问题困扰了,已经花了几天的时间,而我一直关注的大多数链接以及我所做的搜索都使我一无所获。 我想用鼠标界面制作一个简单的游戏,但我也想添加一个预加载器。 我最初使用的是minibuilder,因为它是跨平台的,并且我在Linux上,但是我看到的所有添加预加载器的教
1回复

如何从.as文件中的库中包含的按钮到达

我想要做的是将按钮作为子元素添加到舞台上的影片剪辑中。 在文本字段中获取输入,然后将该输入保存到String变量中。 此按钮应触发此操作。 我发现的唯一问题是我无法到达库中的按钮。 我已经设置了按钮AS链接,并且试图通过该链接来实现。 这行代码行不通: 我得到的错误是: 线254
3回复

如何从ActionScript3中的类实例获取Class对象?

如何从该类的实例中获取actionscript类Class的实例? 在Python中,这将是x.__class__ ; 在Java中, x.getClass(); 。 我知道有一些可怕的黑客可以做到这一点,但我正在寻找一个内置的语言设施,或者至少是建立在可靠的基础上的库例程。