Flash CS5操作指南(75)ActionScript 3.0 的除错
- 2021-11-23
- 来源/作者: 本站原创 / 佚名
- 1 次浏览
ActionScript 3.0 的除错
关于 ActionScript 3.0 除错程序
Flash 包括不同的 ActionScript 3.0 除错程序,其运作方式与 ActionScript 2.0 除错程序稍微有点不同。 ActionScript 3.0 除错程序只适用于 ActionScript 3.0 FLA 和 AS 档案。FLA 档案必须有将发布设定设为 Flash Player 9。当您起始 ActionScript
3.0 除错会话时,Flash 会启动独立的 Flash Player 除错程序版本来播放 SWF 档案。 Flash Player 除错程序会在与 Flash 应用软件窗口不同的窗口中播放 SWF 档案。
上次更新
ActionScript
ActionScript 3.0 除错程序会将 Flash 工作区转换为除错工作区,后者会显示用于除错的面板,包括「动作」面板及/ 或Script 窗口、「除错控制台」和「变量」面板。「除错控制台」会显示呼叫堆栈,并包含用于逐步执行 Script 的工具。「变量」面板会在目前范围中显示变量与变量值,并可让您自行更新这些值。
额外的资源下列资源提供有关 ActionScript 3.0 除错的额外详细信息:
• Understanding ActionScript 3 debugging in Flash ( 了解 Flash 中的 ActionScript 3 除错) (Adobe.com)
• Introducing the ActionScript 3 debugger (ActionScript 3 除错程序简介) (Adobe.com)
进入除错模式
开始除错会话的方式会因目前处理的文件类型而有所不同。在除错会话期间,如果 Flash 遇到断点或运行时错误时,便会中断 ActionScript 的执行。
当 Flash 起始除错会话时,会将它针对此会话所导出的特殊信息加入到 SWF 档案。此信息可让除错程序提供程序代码中发生错误的特定行号。
您可以在「发布设定」中,将此特殊除错信息并入到由特定 FLA 档案所建立的所有 SWF 档案中。如此一来,即使您没有明确起始除错会话,还是可以对 SWF 档案进行除错。不过,此除错信息会使 SWF 档案稍微变大。
从 FLA 档案开始进行除错❖选取「除错> 影片除错> 除错」。
从 ActionScript 3.0 AS 档案开始进行除错1 当 ActionScript 档案在 Script 窗口中开启时,从 Script 窗口上方的「目标」选单中,选取应该和 ActionScript 档案一起编译的 FLA n。FLA 档必须同时在 Flash 中开启,才会出现在此选单中。
2 选取「除错> 影片除错> 除错」。
将除错信息加入所有由 FLA 文件建立的 SWF n之中1 开启 FLA 档后,选取「档案 > 发布设定」。
2 在「发布设定」对话框中,单击「Flash」卷标。
3 选取「允许除错」。
结束除错模式❖ 单击「除错控制台」中的「结束除错会话」按钮。
设定和移除断点
在 ActionScript 程序代码中加入断点,以便中断程序代码的执行。在执行中断后,您可以逐步执行并依行执行程序代码、检视ActionScript 的不同区段、检视变量和表达式的值,以及编辑变量值。
备注:您不能将断点加入 ASC (ActionScript for Communication) 或 JSFL (Flash JavaScript) 档案中。
设定断点❖在「动作」面板或 Script 窗口中,单击某一行程序代码旁边的左方边界,这一行程序代码是您希望断点出现的位置。
移除断点❖在「动作」面板或 Script 窗口中,单击要移除的断点。
上次更新
ActionScript
逐步执行程序行
在 ActionScript 的执行因断点或运行时错误而中断后,您可以依行逐步执行程序代码,选择是要跳入函数呼叫还是要略过。同时也可以选择要继续执行程序代码,而不要逐步执行。
依行跳入程序代码行❖ 单击「除错控制台」中的「跳入」按钮。
略过函数呼叫❖ 单击「除错控制台」中的「略过」按钮。
跳出函数呼叫❖ 单击「除错控制台」中的「跳出」按钮。
继续一般程序代码执行❖ 单击「除错控制台」中的「继续」按钮。
显示并检查呼叫堆栈中的 Script
当程序代码的执行在除错程序中停住时,您可以在「除错控制台」中检视呼叫堆栈,并显示呼叫堆栈中有包含函数的 Script。呼叫堆栈会显示目前正在等候执行完成之巢状函数呼叫的列表。
您可以检视含有每个函数的个别 Script。
❖在「除错控制台」面板中,于呼叫堆栈中双击此 Script 的名称。
显示并修改变量值
在「变数」面板中检视及编辑变量和属性的值。
检视变量值1 在「变数」面板中,从「面板」选单中选取要显示的变量类型。
•「显示常数」会显示常数值 ( 拥有固定值的变量)。
• 「显示统计数据」会显示属于类别的变量,而不会显示属于类别实体的变量。
• 「显示无法存取的成员变量」会显示无法由其他类别或命名空间所存取的变量,包含对命名空间具有受保护、私有或内部属性的变量。
•「显示其他的十六进制显示」会在每次显示十进制值时加入十六进制值。这项功能主要是用在颜色值上。0 到 9 的十进制值无法以十六进制值来表示。
• 「显示限定名称」会显示同时包含套件名称与类别名称的变量类型。2 逐层展开 FLA 的对象结构树视图,直到您看到变量为止。
编辑变量值1 在「变数」面板中,连双击变数值。
2输入变量的新值,然后按下 Enter。新值会用在后续的程序代码运行时间。
上次更新
ActionScript
控制编译程序警告
在「编译程序错误」面板中控制 ActionScript 编译程序所产生的编译程序警告类型。当编译程序回报错误时,在该错误上双击,即可浏览到导致错误的程序代码行。1 选取「档案 > 发布设定」。2 单击「Flash」。3 单击「ActionScript 设定」按钮。4 在「错误」选项之间进行选取:
• 「严谨模式」会将警告回报为错误,这表示如果有这些错误存在,就无法成功完成编译。
•「警告模式」会回报额外的警告,这对于找出 ActionScript 2.0 程序代码更新为 ActionScript 3.0 时的不兼容问题有很大的帮助。
浏览到程序代码中的错误
不管是在编译期间还是执行期间,当 Flash 遇到 ActionScript 程序代码中的错误时,都会在「编译程序错误」面板中回报错误。从「编译程序错误」面板中浏览到导致错误的程序代码行。
❖ 在「编译程序错误」面板中连双击该错误。
针对远程 ActionScript 3.0 SWF 档进行除错
有了 ActionScript 3.0,您就可以使用 Flash Player 除错程序的单独、ActiveX 或插件版本,对远程 SWF 档进行除错,这个版本位于 Flash 安装目录/Players/Debug/ 目录。然而,在 ActionScript 3.0 除错程序中,远程除错作业仅限于与 Flash 编写应用程序位于相同 localhost,且使用独立除错播放程序、ActiveX 控件,或是插件进行播放的档案。
若要允许对远程档案进行除错,启用「发布设定」中的除错功能。您还可以将档案连同除错密码一起发布,以确保只有受信任的使用者才能对它进行除错。
和在 JavaScript 或 HTML 中一样,使用者也可以在 ActionScript 中检视客户端变量。为了要安全地储存变量,请将变量传送到服务器端应用程序,而非将其储存在档案中。不过,身为开发人员,您可能有其它不想要公开的商业秘密 ( 如影片片段结构),就可以使用除错密码来保护您的工作。
启用 SWF 档案的远程除错,并设定除错密码在 ActionScript 3.0 FLA 文件中,无法针对影格 Script 中的程序代码进行除错,只有外部 AS 档案的程序代码可以使用ActionScript 3.0 除错程序进行除错。
1 储存 FLA 档案。2 选取「档案 > 发布设定」。3 在「发布设定」对话框的「Flash」卷标上,选取「允许除错」。4 关闭「发布设定」对话框,然后选取下列其中一个命令:
•「档案 > 汇出 > 汇出影片」
• 「档案 > 发布」5 将 SWF 档保留在本机,以便在 localhost 上执行远程除错会话或是将之上传到网站服务器中。SWF 文件未包含任何断点信息,因此假如您将档案上传到远程服务器,将无法逐步执行程序代码。使用 localhost 来执行此
工作。6 在 Flash 中,选取「除错 > 开始远程除错会话 > ActionScript 3.0」。
上次更新
ActionScript
Flash 会开启 ActionScript 3.0 除错程序并等候 Flash Player 除错程序进行连接。这时候您有两分钟的时间可以启动 Flash Player 除错程序。如果超过两分钟,请重复此步骤。
7在 Flash Player 插件、ActiveX 控件,或是独立播放程序的除错程序版本中开启 SWF 文件。除错程序的独立播放程序位于 Flash 安装目录/Players/Debug/ 目录中。请勿将档案连接到另一部机器上,因为这样一来除错程序将无法收到任何断点信息。
当除错播放程序连接到 Flash ActionScript 3.0 的「除错程序」面板时,就会开始除错会话。
从远程位置启动除错程序1 如果 Flash 编写应用程序尚未开启,请现在开启它。2 选取「除错 > 开始远程除错会话 > ActionScript 3.0」。
3在浏览器或单独的 Flash Player 除错程序版本中,从远程位置开启已发布的 SWF n。如果没有出现「远程除错」对话框,请在 SWF 档案中单击右键 (Windows) 或 Control + 单击 (Macintosh) 以显示快显选单,然后选取「除错程序」。
4 在「远程除错」对话框中,选取「Localhost」,然后选取要开启的档案。「除错程序」中便会出现 SWF 档案的显示列表。如果 SWF 档案没有播放,「除错程序」可能处于暂停状态,所以请单击「继续」开始播放。