views:

334

answers:

1

Hi,

I have this very strange problem on a big flex app where it would run fine with the debug swf if the user has debug flash installed but will have some disparities for people with standard version of flash.

These disparities include:

  • No pop ups

  • loose all event catching

  • Weird positioning of a button

I read somewhere that updatedisplaylist was handled differently ? For now i will try the export release way instead of the bin-debug swf, and to go back in the commits to see what was the turning point.

Any similar experiences ?

+2  A: 

I've been using Flex for a long time and have never heard of any problems like these being related to using the debug vs standard versions of the Flash player, but I have experienced problems similar to what you're experiencing.

When an exception occurs in your application, like attempting to access something in a null class or trying to access element 10 in an array that only has 9, the debug player will pop up a window stating that an exception has occurred and give you a stack trace, even if you're not actively debugging the app. The standard player does not, so the user will have no way of knowing that something went wrong.

In my experience after an uncaught exception occurs it can make all running code from that point on very unstable, causing all of the problems you list and more.

I doubt your problem has anything to do with the two different players beyond the standard one not giving you any feedback about the state of your app.

Matt Guest
So that means an error is raised with the normal player which does not happen whith the debug one. That is going to be hard to track !.
coulix
Matt's comment is right on the money. I've never seen any difference in behavior between a debug and release player of the same version, other than the stack-trace dialog not showing up, and in release builds, following unhandled exceptions, things just seeming to "stop working right." Almost certainly, either there's an unhandled exception occurring somewhere in your code, or your SWF's targeting a player version newer than the one installed on the user's machine.
Christian Nunciato
Fixed it, it was a new trace using stack-trace to get the line number of the call ! Thanks !
coulix