没有Flash Player的调试版本,Flex应用程序无法运行

2DH*_*2DH 0 apache-flex flash actionscript-3

最近,当我试图向我的老板展示我的工作成果(一些Flex应用程序)时,我很惊讶我的电脑上运行得非常好的应用程序,在我的老板的电脑上显示不正确(唯一可见的东西)是默认的灰色背景).经过3小时的尝试绝对一切,最后当我将他的Flash Player版本从标准版改为调试版时,应用程序出现了(两者都是v.10.0.22.87).有谁知道这可能是什么原因(任何编译器标志或......).强迫我的老板安装调试FP是相当不错的,但强迫应用程序的最终用户这样做是不可接受的.

谢谢

PS:通过显示我的意思是在我的电脑上部署到Tomcat并给我的老板一个指向该应用程序的链接.我们都使用Win XP.此外,当我为Netscape浏览器安装调试FP和IE的标准FP(在我的电脑上)时,结果是相同的 - 在IE中使用Firefox,Opera,Chrome和灰色背景.我已将它们编译为Debug和Release.我正在使用Flash Develop 3.0.2 RTM

剥离我的应用程序后 - 它仍然只适用于调试FP

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
    xmlns:ca="components.*"
    xmlns:ea="components.editAreas.*"
    layout="vertical"
    backgroundColor="black">

    <mx:Canvas id="header"
        verticalScrollPolicy="off"
        horizontalScrollPolicy="off"
        styleName="header"
        width="100%"></mx:Canvas>

    <mx:Canvas id="mainContent"
        width="100%" height="100%"
        verticalScrollPolicy="off">
    </mx:Canvas>

</mx:Application>
Run Code Online (Sandbox Code Playgroud)

小智 5

几天前我面临同样的问题.

我正在使用以下代码

//调用函数traceDetails(new Error())

private function traceDetails(err:Error):void { err.getStackTrace() }在我的部分我使用的方法是"getStackTrace()"这里要记住的是getStackTrace()方法仅适用于Flash Debugger和Not With Flash播放器.因此,如果我没有安装Flash Debugger,我的应用程序将停止运行.

所以要做的事情1.检查您是否使用仅在Flash调试器中可用的任何API调用而不是在Flash播放器中(如果您发现尝试注释该行应用程序将开始运行).2.在运行应用程序的任何地方安装Flash Debugger版本,或者在Flash调试器API调用之前,检查是否(Capabilities.isDebugger)仅使用这些API或跳过这些行.

我相信这会解决你的问题

快乐编码:)