If you develop Adobe AIR applications using AJAX, you may eventually come across a strange bug. Adobe says you can embed external SWF files in your HTML application, and from that example code it's simple! So why do SWFs seem to load fine in some HTML AIR apps, but in others they don't show up at all?
<!-- Whether the window is transparent. Only applicable when systemChrome is false. Optional. Default false. --> <transparent>true</transparent>
There's the culprit. One of the controversially cool features in AIR is that you can
abandon system chrome to
make your application transparent. Problem is, even in parts of your page that are visible, SWFs do not seem
to appear when your
application.xml file sets transparent to true. Set it to false and everything works again!
A side effect of this workaround is that if your application has a non-rectangular background, or parts of the application are supposed to be see-through, your users won't be able to click what's "beneath" the app on their screen.
So is this feature tradeoff a bug? I think so, as it seems of all the things that play nicely with Adobe AIR, Adobe Flash should be one. Note that this problem may not apply to AIR apps created in Flex or Flash.
This lesson brought to you by one very frustrating work day.