This kinda makes sense. Browsers are no longer allowing you to simply open new windows via javascript. Their opening must be tracable back to a user-gesture (i.e. mouse click). I guess it is Adobe's way of preventing its platform from getting a bad rap for being used as an ad-ware distributor.
Still, it's frustrating that you could not find the documentation around that. Did you add your discovery as a livedocs entry? On Sun, Oct 24, 2010 at 9:31 PM, Laurence MacNeill <[email protected]>wrote: > Found the problem. You have to call the air.swf's launchApplication method > from within a user-caused event handler. It MUST be in response to a > mouse-click or keyboard event, and NOT one that was programmatically > generated (e.g. you cannot call a function with something like > "buttonClickHandler(new MouseEvent(MouseEvent.CLICK));" and expect it to > work.) > > So -- don't try to launch an external app unless you're doing it from > within a function that was called by a user-generated event. A > programmatically-generated event will fail every time, and will give you NO > WARNING! (Nice little "undocumented feature" in air.swf...) > > L. > > > > On Sat, Oct 23, 2010 at 5:35 PM, Laurence MacNeill <[email protected] > > wrote: > >> Oh, and of course allowBrowserInvocation is set to true... >> >> L. >> >> >> On Sat, Oct 23, 2010 at 4:30 PM, Laurence MacNeill < >> [email protected]> wrote: >> >>> I'm loading the air.swf properly (I know this because when I run the Flex >>> program in Debug mode, there's a message on the console telling me that >>> air.swf loaded properly...) >>> >>> When I call the air.launchApplication function, though, nothing >>> happens... >>> >>> myAirSWF.launchApplication("myAirProgramID", "", [myArgs]); >>> The above does nothing at all... No errors, no nothing... >>> >>> It's AIR 2.0, which uses no Program ID (hence the second parameter there >>> being a "" instead of the program ID.) From what I've read, this SHOULD >>> work. But it does nothing. I also read somewhere that perhaps putting " " >>> (a space) in the Prog. ID will help -- but that also did nothing. >>> >>> So why is my AIR app not loading from my Flex program? It should be >>> working... >>> >>> The only thing I can think of is that maybe there's an event being passed >>> back that I'm not listening to, perhaps? But that's not in the >>> documentation for this air.swf file... Or perhaps it's because it's a >>> secure (https) Flex page calling an insecure AIR app? Any ideas? >>> >>> Thanks, >>> Laurence MacNeill >>> Mableton, Georgia, USA >>> >> >> > -- Scott Talsma CTO, echoEleven
