专注于 ActionScript 3.0 在各应用领域的研究。
« 在AS3中重置Array的几种方法的效率测试研究Base64转byteArray再转bitmapdata »

原创-使用Flex调试Flash编译的swf

   2009-04-27更新

        最近发现,如果想要在flex里面调试swf文件,其实只要在flex打开编译swf所需的类,即可进行调试,swf不需要是用flex编译的。

        最近公司进行项目开发,我负责主逻辑与部分功能模块的开发,使用的是flex3的AS 工程,而我的同事负责编写部分模块,但使用的是flash的IDE,因为是外部加载入主逻辑后进行使用,所以除了不能共享库类之外,看似也没什么太大的问题,可是到了整合调试的时候,就有点麻烦了,一个是flash,一个是flex,怎么断点呢?

   如果不能断点,我就不能知道加载进来的flash编译的swf到底在哪一步出了错,错误主要是出现在场景给如不同参数调用swf内部封装的一些方法导致的,很痛苦的说。

   后来无意间,我把同事的项目文件夹,copy到整个项目的svn下,本来准备自己用flash来慢慢调试的,可是偶然的在flex中的调用swf方法的那个地方断了个点,然后按了一下,下一步,发现flex居然神奇的找到了这个swf的文档类,不仅可以打开,而且还可以在这个文档类里面进行断点,或者是这个文档类里面导入的其他类中进行断点测试~。

    太神奇了,呵呵。不太能够明白flex如何能够找到这个文档类的,因为文档类放置的地方和整个flex中引用类的Librarys完全无关,flash发布的swf的地方也和类文件完全无关,是发布到flex的bin文件夹下的。

   我把这个经验告诉你,希望对你有用^_^。

  2008-08-20 补充内容

   zhukefeng 提供信息: 

flash在编译swf时,文档类,和绑定类都可以进行调试,文档类在load的时候会执行,继承的类,必须要把对应的实例拉到舞台上(dmh2002注:这个可以在代码中new class的方式实现,不一定要拉到舞台,拉到舞台其实也就是先成功一个实例),就可以调试。   

  • quote 1.zhukefeng
  • 原创-使用Flex调试Flash编译的swf
    关于这个是否可以说详细一些??
    是否可以说说“在flex中的调用swf方法”是指什么方法??
    我使用embed进来,但还是没有办法断点调试对应的swf
  • 2008-8-20 9:16:45 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Walle Build 100427 Code detection by Codefense

Copyright 2008-2010 DMH2002's Blog Some Rights Reserved.沪ICP备07021739号