Actionscript 3 “我怎么能?”;改为;源代码中未记录的AS3 API?
获取内部AS3方法源代码的最佳技术是什么?我正在尝试了解有关DisplayObjectContainer.constructChildren()的更多信息-它是私有的吗?它受到保护吗?我可以延长吗Actionscript 3 “我怎么能?”;改为;源代码中未记录的AS3 API?,actionscript-3,introspection,Actionscript 3,Introspection,获取内部AS3方法源代码的最佳技术是什么?我正在尝试了解有关DisplayObjectContainer.constructChildren()的更多信息-它是私有的吗?它受到保护吗?我可以延长吗 是否存在内部AS3代码的源代码视图 无法告诉您有关查看源代码的信息,但constructChildren不可用于覆盖。以下给出了FDT中的一个错误,因为它在超类中看不到相应的方法: package { import flash.display.DisplayObjectContainer;
是否存在内部AS3代码的源代码视图 无法告诉您有关查看源代码的信息,但
constructChildren
不可用于覆盖。以下给出了FDT中的一个错误,因为它在超类中看不到相应的方法:
package {
import flash.display.DisplayObjectContainer;
public class Test extends DisplayObjectContainer {
public function Test():void
{
}
override protected function constructChildren():void
{
}
}
}
无法告诉您有关查看源代码的信息,但
constructChildren
不可用于覆盖。以下给出了FDT中的一个错误,因为它在超类中看不到相应的方法:
package {
import flash.display.DisplayObjectContainer;
public class Test extends DisplayObjectContainer {
public function Test():void
{
}
override protected function constructChildren():void
{
}
}
}
您可以尝试反编译
playerglobal.swc
。尽管在反编译的类文件中很难判断出发生了什么(如果代码被混淆,这几乎是不可能的),但您应该能够了解发生了什么
playerglobal.swc
重命名为playerglobal.zip
并解压缩library.swf
文件您可以使用internet上提供的几种商用闪存反编译器之一。我有时使用的一种方法是,免费演示仍然允许您读取源文件(但您无法突出显示/复制代码)。您可以尝试反编译
playerglobal.swc
。尽管在反编译的类文件中很难判断出发生了什么(如果代码被混淆,这几乎是不可能的),但您应该能够了解发生了什么
playerglobal.swc
重命名为playerglobal.zip
并解压缩library.swf
文件您可以使用internet上提供的几种商用闪存反编译器之一。我有时使用的一个是因为免费的演示仍然允许您阅读源文件(但您无法突出显示/复制代码)。据我所知,源代码不是公开的,所以您最好的资源是API和google。据我所知,源代码不是公开的,所以你最好的资源就是API和谷歌。谢谢你的测试。我不能100%确定它是否在DisplayObjectContainer上(看起来应该在这里)——它可能在Sprite上。但你可能是对的,这是一个私有的方法。@Tom-对Sprite也有同样的结果。我可以问一下你为什么要找这个吗?我对AMF2在显示列表中构建和实例化子对象的方式感到失望。它们总是在其父级之前实例化,因此,如果您依赖于导出类的设计时元素,而这些类希望能够访问在其父级中设置的初始化值,那么要获得正确的时间安排是一件麻烦的事情。我想,也许偷看一下代码就可以提供一种巧妙的方法来改变这个顺序,或者改变一种不同的方法。这是不可能的。真是一个小小的实验。谢谢你的测试。我不能100%确定它是否在DisplayObjectContainer上(看起来应该在这里)——它可能在Sprite上。但你可能是对的,这是一个私有的方法。@Tom-对Sprite也有同样的结果。我可以问一下你为什么要找这个吗?我对AMF2在显示列表中构建和实例化子对象的方式感到失望。它们总是在其父级之前实例化,因此,如果您依赖于导出类的设计时元素,而这些类希望能够访问在其父级中设置的初始化值,那么要获得正确的时间安排是一件麻烦的事情。我想,也许偷看一下代码就可以提供一种巧妙的方法来改变这个顺序,或者改变一种不同的方法。这是不可能的。真是一个小小的实验。很好!这个playerglobal.swc文件在哪里?如果您使用Flex SDK:
sdks>4.5.1>frameworks>libs>player>10.2>playerglobal.swc
。如果您使用Flash Professional:Adobe Flash CS5.5>Common>Configuration>ActionScript 3.0>FP10.2>playerglobal.swc
Nice!谢谢你提供的额外信息。很好!这个playerglobal.swc文件在哪里?如果您使用Flex SDK:sdks>4.5.1>frameworks>libs>player>10.2>playerglobal.swc
。如果您使用Flash Professional:Adobe Flash CS5.5>Common>Configuration>ActionScript 3.0>FP10.2>playerglobal.swc
Nice!谢谢你提供的额外信息。