Interesting consulting inquiry today. I wrote a pretty sophisticated slide rendering application in Flash MX that used DENG along with some custom code to basically create xml-powered Powerpoint for a training company. They author XML with embedded HTML (inside of a CDATA) which the rendering engine turns into animated slides with audio, video and images for their customers.
In a new round of QA, they found that sound wasn’t playing in Safari. It wasn’t playing in Firefox on the Mac either. Turns out the culprit was an invalid EMBED src parameter with unescaped & characters in the query string. Escaping them to read & resolved the problem.
My recommendations for debugging strangeness in XML-powered Flash applications (and probably AJAX applications as well):
- Verify that your XML is valid. Run it through a validator
- Verify that your HTML is valid. Run it through the W3C validator
If you can’t confirm these two are true, you can’t begin to debug more sinsister issues in your applications. Start with a known quantity and debug in steps!
Nathan Dintenfass said:
on July 9, 2006 at 7:57 pm
I have seen more than one thing “break” in Safari that seems to work fine in IE. Seems Safari is just more strict about all sorts of things.