Air.swf getApplicationVersion()  not returning

Hi,
I am using air.swf api to detect installed applications... but this doesn't written any call backs...
any idea ?
Regards,
Brijesh

Hi Chris,
Thanks for the reply...
I have 2 air applications... From one application, I need to detect if other air application is installed or not.. Fo this I am using the air.swf file..
and air.getApplicationVersion() method of air.swf...
But sometimes it doesn't invoke the callback method..
Also, I was looking to if this feature can be used in offline mode.. As air.swf needs to be downloaded always.. can this be used for offline mode...
Regards,
Brijesh

Similar Messages

  • Air.swf getApplicationVersion() not calling back

    I am trying to use air.swf from
    http://airdownload.adobe.com/air/browserapi
    per the Adobe documentation to detect if an air application is
    already installed. I'm using getApplicationVersion but the callback
    function is never called. launchApplication() and
    installApplication() work fine.
    The code looks like this:
    _air.getApplicationVersion(appID, pubID,
    versionDetectCallback);
    function versionDetectCallback(version:String):void { do
    stuff }
    VersionDetectCallback() is never called. I de-compiled the
    air.swf and ran the code directly to try and figure out what's
    failing. But I get the same result. I can see the timer on the
    LocalConnection endpoint timing out after 5 seconds. I just can't
    figure out why the appinstaller is not calling back. The actual
    call (taken from the decompiled swf) looks like this:
    airappinstaller = new ProductManager("airappinstaller");
    var launchArgs:Array;
    launchArgs = ["-isinstalled", appID, pubID, "adobe.com" + ":"
    + lcName, "onApplicationVersion"];
    airappinstaller.launch(launchArgs.join(" "));
    where onApplicationVersion is the endpoint callback function
    and lcName is the LocalConnection name.
    It doesn't matter if I make the call from the Loader Init
    event or in a button click the callback function is never called. I
    am using Flash CS3.

    Hi Lisa,
    I am on windows yes,  and I seem to have got it working.  I found this problem to be very perculiar as there were many things my badge didnt like - such as a case statement instead of a load if if's.   anyway my solution is below,  although I must say, that now nothing happens if the user doesnt have air installed!  If they have Air installed but not my application, it will install my app but the need air installed first and that is not ideal!
    Maybe implementing your timer solution may help this?  Thanks for taking an interest!
    private var _toDo:String;
    private function onInit(e:Event):void
                _air = e.target.content;
                try
                  _air.getApplicationVersion(_applicationID, _publisherID, versionDetectCallback);
                catch (e:Error)
                  trace('air not installed');
                   root.statusMessage.text = 'Adobe Air not installed'
                   _toDo = new String("installAir")
    private function versionDetectCallback(version:String):void
                if (version == null)
                   trace('app not installed');
                   root.statusMessage.text = 'Coach Player not installed'
                   _toDo = new String("installApp")
                else
                   trace('app version ' + version + ' installed');
                   root.statusMessage.text = 'Application version ' + version + ' installed'
                   _toDo = new String("launchApp")
    private function onButtonClicked(e:Event):void
       root.statusMessage.htmlText = "onButtonClicked"
       if(_toDo == "installAir"){installAir()}
       if(_toDo == "installApp"){installApp()}
       if(_toDo == "launchApp"){launchApp()}
      protected function installAir():void
       root.statusMessage.text = 'Installing Adobe Air';
       _air.installApplication( _appURL, _airVersion, _arguments );
       //root.statusMessage.text = _appURL+" | "+ _airVersion+" | "+ _arguments
      protected function installApp():void
       root.statusMessage.text = 'Installing Coach Player';
       _air.installApplication( _appURL, _airVersion, _arguments );
       //root.statusMessage.text = _appURL+" | "+ _airVersion+" | "+ _arguments
      protected function launchApp():void
       root.statusMessage.text = 'Launching Coach Player';
       _air.launchApplication(_applicationID, _publisherID, _arguments);
       //root.statusMessage.text =  _applicationID+" | "+ _publisherID+" | "+ _arguments;
       //root.statusMessage.text = _arguments;

  • Air.swf GetApplicationVersion callback not called

    I am trying to use air.swf from
    http://airdownload.adobe.com/air/browserapi
    per the Adobe documentation to detect if an air application is
    already installed. I'm using getApplicationVersion but the callback
    function is never called. launchApplication() and
    installApplication() work fine.
    The code looks like this:
    _air.getApplicationVersion(appID, pubID,
    versionDetectCallback);
    VersionDetectCallback() is never called. I de-compiled the
    air.swf and ran the code directly to try and figure out what's
    failing. But I get the same result. I can see the timer on the
    LocalConnection endpoint timing out after 5 seconds. I just can't
    figure out why the appinstaller is not calling back. The actual
    call (taken from the decompiled swf) looks like this:
    airappinstaller = new ProductManager("airappinstaller");
    var launchArgs:Array;
    launchArgs = ["-isinstalled", appID, pubID, "adobe.com" + ":"
    + lcName, "onApplicationVersion"];
    airappinstaller.launch(launchArgs.join(" "));
    where onApplicationVersion is the endpoint callback function
    and lcName is the LocalConnection name.
    Anyone know why GetApplicationVersion() doesn't work?

    I am trying to use air.swf from
    http://airdownload.adobe.com/air/browserapi
    per the Adobe documentation to detect if an air application is
    already installed. I'm using getApplicationVersion but the callback
    function is never called. launchApplication() and
    installApplication() work fine.
    The code looks like this:
    _air.getApplicationVersion(appID, pubID,
    versionDetectCallback);
    VersionDetectCallback() is never called. I de-compiled the
    air.swf and ran the code directly to try and figure out what's
    failing. But I get the same result. I can see the timer on the
    LocalConnection endpoint timing out after 5 seconds. I just can't
    figure out why the appinstaller is not calling back. The actual
    call (taken from the decompiled swf) looks like this:
    airappinstaller = new ProductManager("airappinstaller");
    var launchArgs:Array;
    launchArgs = ["-isinstalled", appID, pubID, "adobe.com" + ":"
    + lcName, "onApplicationVersion"];
    airappinstaller.launch(launchArgs.join(" "));
    where onApplicationVersion is the endpoint callback function
    and lcName is the LocalConnection name.
    Anyone know why GetApplicationVersion() doesn't work?

  • Why air.swf not work ,these days!!!

    why the Air.swf did not work correctly for 5 days.
    but , it worked terrificly ok days before.
    has adobe changed something which making Air.swf cannot do "airSWF.getStatus()" ?
    P.S :  the Air.swf  url is http://airdownload.adobe.com/air/browserapi/air.swf

    Open System Preferences > Sound > Output
    Make sure the coorect output devices is selected and the Mute button is not checked.

  • I need to download all of my photos from my iPhone 4S and my iPad 2 to my MacBook Air. I want to make sure all my photos are not lost and that they do not return to the original devices because of the cloud. Can someone please help ?

    I need to download all of my photos from my iPhone 4S and my iPad 2 to my MacBook Air because there is no more storage space available. I want to make sure all my photos are not lost and that they do not return to the original devices because of the cloud. Can someone please help ?

    Connect your devices to the computer with the USB cable (one device at a time) and import the photos via iPhoto or Image Capture.
    If you have not changed any default settings on your computer, iPhoto will automatically launch when you plug in the device. Then follow the import prompts.

  • SWF does not appear when returning to browser tab

    I got an odd bug report on a web app we are developing.
    The swf appears fine for the most part, but is the user has multiple browser tabs open, moves to a differnt tab and then returns to the tab with the swf, the swf does not appear until the mouse scrolls over the swf.
    At first glance it would look like the swf is not being redrawn until the user intereacts with it (we are doing a good amount of mosue polling).  It it as if to save memory the browser stops displaying the image, and does not redeisplay until we explicitly redraw the stage. 
    Has anyone run into a similar situyation?  I am not sure where to start with this.
    Some potentially relevant apsects of the swf:
    Most of the objects on the stage have chachAsBitmap set to true and we are applying a gradient mask to most of the stage, so there is a good amount of processing going on and I know thishas caused some other redraw oddities. 
    The frame rate is set to a very slow 4fps, and movie is controlled from a timmer.
    Any leads would be appreciated.
    The tester reporting this was using Chrome 9.0.597.107 and Flash player 11.3.300.26

    Thank you very much! I was not aware of the ThrottleEvent, I'll try forcing a redraw when I recieve it. 
    Reading the documentation, it says the frame rate drops typically to between 2 and 8 fps.  If I am running at 4 fps, with the swf still throttle down and back up?  After reading this document http://help.adobe.com/en_US/as3/mobile/WS4bebcd66a74275c36cfb8137124318eebc6-8000.html  I assume yes, but do you know if that is the case.
    Hopefully the client will let me up the minimum player version to 11.2
    Thanks again

  • IE/ExternalInterface do not return any value if movie added with appendChild

    There is a problem with IE/ExternalInterface if movie is added to DOM f.ex appendChild. JavaScript functions are called but they do not return any value.
    MS first response was that this is 3rd party/Adobe problem.
    Fixing this with innerHTML is not the solution. Using here Any suggestions ?
    Simplified test case has
              var flashMovie = '<OBJECT id="testId" codeBase="http://fpdownload..
              // Works in IE and FF
              document.getElementById("testdiv").innerHTML = flashMovie;
              // ExternalInterface.call calls JS but does not return value in IE. Works in FF
              var tempDiv = document.createElement("div");   
              tempDiv.innerHTML = flashMovie;
              document.body.appendChild(tempDiv);
    Here is complete code
    http://pastebin.com/fbc0aa9a
    Here is AS3 code in for ajax.swf
    http://pastebin.com/d4efd47b
    -H

    You are right about that duplicate id of the movie in this example, but that is not case here.
    I appreciate if you try this and confirm that problem exist or any work-around.
    Here is more explanation to original post:
    In HTML is JavaScipt
    function fromJs()
         return "text from js..";
    that is called from AS3
    var s = ExternalInterface.call("fromJs");
    This "s" value and also ExternalInterface.objectID are null in AS3.
    Here example again only with non-working case without that duplicate id with innerHTML
    http://pastebin.com/f4e33af93
    and also movie with AS3 code is attached.
    Using plain innerHTML this case works
    document.getElementById("testdiv").innerHTML = '<OBJECT..
    and with appendChild does not work
    var tempDiv = document.createElement("div");
    tempDiv.innerHTML = "<OBJECT ..
    document.body.appendChild(tempDiv);

  • Working with badge.swf and air.swf (browser api)

    I basically want to install and run my app through the
    browser so ive been testing but can't manage to figure out how the
    air.swf api works. i am stuck at loading air.swf. the page below
    has a tutorial but a downloadable sample code would be perfect, not
    sure where the little snippets of code from the "Loading the
    air.swf file", "Checking from a web page if an AIR application is
    installed", "installing an AIR application from the browser", and
    "Launching an installed AIR application from the browser" go in my
    own codebase. Also im a bit unclear on where i get appid or
    developer id. if someone has an example app or more in-depth
    explantion of incorporating the given code , i would much
    appreciate it.
    http://livedocs.adobe.com/flex/3/html/help.html?content=distributing_apps_3.html

    quote:
    Originally posted by:
    cjm771
    can't manage to figure out how the air.swf api works
    The main thing you must understand about air.swf
    is that its most important functionality can only be called from
    within a UI event handler, such as for a button click. It's very
    picky about this. You can't, for example, use the button click
    event handler to begin the loading of air.swf, then in the "loaded"
    callback do the air.swf API call. air.swf has to be loaded and
    ready at the time the event handler is called. So, load it on app
    startup. I even go to the extent of disabling the buttons that call
    into air.swf until it's loaded.
    quote:
    im a bit unclear on where i get appid or developer id
    The appid is your application's unique ID, which
    you gave in setting up your project. Adobe recommends using
    something based on your web site's domain name, in reverse order as
    is done in Java and Objective C. If you're at foo.com, and call
    your program Qux, then com.foo.qux is a good appid. The use of
    domain-like names helps ensure that programs from different
    companies don't collide with each others' namespaces.
    By default, the pubid is a random number assigned by the IDE.
    I forgot how you find out what number it used, just that there's a
    way. Or, you can assign it yourself, in the project settings for
    the AIR app. Right-click the project, go to the Run/Debug Settings
    section, edit the launch configuration for your AIR app. You'll
    find a Publisher ID field there. The documentation for ADL may be
    helpful for picking your own pubid.
    quote:
    if someone has an example app or more in-depth explantion of
    incorporating the given code , i would much appreciate it.
    See my code in this thread:
    http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?forumid=75&catid=697&threadid =1352505&highlight_key=y&keyword1=air%2Eswf

  • Adobe air swf file error in browser

    my fla file setting
    version: adobe air 1.0 actionscript 3.0
    i able to compile without problem and when i load the swf file in browser, if my actionscript included this line "import flash.filesystem.File". My flash just show up "blank" . no error in flashlog. if i removed this line, my swf file able to run. what is wrong?
    p/s: i embeded the air app as swf and open with browser

    You can't load SWFs published for AIR in a browser. The Flash plug-in does not recognize the extra AIR APIs like File.
    AIR SWFs can only be used as part of an AIR application.

  • Link to API for air.swf

    Hi, I've been searching the interwebs all morning and can't seem to find a link to documentation describing the properties, methods and events I can use from the air.swf file in conjunction with using AIR via a web browser.  I'm able to load the air.swf and see the framework status, but I don't know what other options I can use to perform actions via the API.  If anyone knows of a link to documentation I'd appreciate hearing about it.  Thanks!

    Hi, thanks for the information but I already have the developer guide that contains this.  What I'm looking for is documentation on the class specifications for the browser API.  Two methods that are mentioned in the documentation I already have are getStatus() and getApplicationVersion(), but I haven't seen any other methods, properties or events documented elsewhere.
    Ideally if there's something akin to the Flash help file documentation of the internal classes that would be great.  Thanks for your help! 

  • Problem passing arguments with air.swf

    I'm attempting to launch my AIR application using
    launchApplication() in air.swf. I'm having problems passing
    arguments to my application due to what appears to be some
    restriction in allowed characters. To get around this, I've even
    tried URL encoding and Base-64 encoding my arguments to make them
    more friendly, but it's still failing:
    Error: Invalid argument: PG5vIGlkZW50aWZpZXI+
    at AIR$/escapeArguments()
    at AIR/launchApplication()
    at
    adlm_launcher/onDownloadClick()[E:\adlm\launcher\src\adlm_launcher.mxml:181]
    It seems that any kind of punctuation is not allowed in
    arguments. URL encoding them doesn't work either because the % is
    rejected. Is there any other way around this?

    Yes; it's a security restriction. Browser invocation require
    process creation, and many process creation APIs giving special
    meanings to certain characters. Letting those characters through
    has in the past been a source of security vulnerabilities. While we
    also try to avoid using APIs with this behavior, extra layers of
    defense are also good.
    I think + and / may actually be safe choices; you make a good
    point that they're useful for Base64. If you could submit a feature
    request at www.adobe.com/go/wish, we'll definitely consider it.
    Another option, btw, is to use the LocalConnection API to
    pass data between the web page and your application once your app
    is launched. LocalConnection has fewer restrictions on the data
    passed.

  • Detect other air applications (when not connected to internet)

    Hi,
    we have a req to provide a link within our air app, click on it and the app should detect if another air app (from same publisher) is installed on user's machine. If installed launch it if not install it.
    I used air browser api, it works fine. But only when the user is connected to internet, since the air.swf needs to be downloaded from adobe.
    Is there a way to detect other air apps in offline mode ? (I tried copying air.swf to local, but doens't work due to security issues)
    Anyone with thoughts on how to achieve this in offline mode ?
    Thanks,
    Brijesh

    Hi Brijesh,
    As you've seen, hosting the air.swf locally (or anywhere besides airdownload.adobe.com) isn't supported or allowed.  I've seen this request come up a couple of times now, if this functionality is important I'd like to recommend adding a feature request on our ideas.adobe.com site.
    I haven't tried this so I'm really not sure if it would work, but if your app was installed natively and you knew the location of the installed app, could you create a file object and check to see if the file existed?  If it did, try launching with openWithDefaultApplication().  If not, download the installer to a temp location, then launch the installer with openWithDefaultApplication()?   Basically duplicating what you need from the air.swf in your actionscript code.
    Chris

  • Safari locks up on my macbook air and can not be restarted.

    Safari locks up on my macbook air and can not be restarted.  Doing a reboot gets me back to normal but every time I restart Safari it goes to the locked up page.

    Quit Safari. If it won't quit in the usual way, select
     ▹ Force Quit...
    from the menu bar, then select Safari from the list and press return.
    Relaunch Safari by holding down the shift  key and clicking its icon in the Dock. That will stop the bad page from reloading automatically. From the menu bar, select
    Safari ▹ Preferences... ▹ Privacy ▹ Remove All Website Data
    to get rid of any cookies or other data left by the server.

  • Are we allowed to host air.swf on locally?

    Hi,
    Are we allowed to download air.swf and host air.swf locally for enterprise application which do not have access to internet?
    Thanks,
    Madhu

    JDeveloper and OC4J 11g Technology Preview

  • Bundle air.swf in the application, launching other air applications

    Hi,
    I have 2 air applications which need to be installed on users machine. From one application I need to check if the other application is installed or not. If it is installed, need to launch that application else install that application...
    I am using following code to do that.. which works fine..
                   _loader = new Loader();
                    var loaderContext:LoaderContext = new LoaderContext();
                    loaderContext.applicationDomain = ApplicationDomain.currentDomain;
                    _loader.contentLoaderInfo.addEventListener(Event.INIT, processApplicaitons);
                    _loader.load(new URLRequest("http://airdownload.adobe.com/air/browserapi/air.swf"), loaderContext);
    My question is,
    Can I bundle air.swf within the air applications, so that this works in offline mode when the user is not connected to the internet ?
    Any thoughts ?
    Regards,
    Brijesh

    It might work (I'm not really sure), but it definitely isn't supported. Adobe reserves the right to make changes to how the air.swf program, and the related infrastructure, works -- which could break you app at any time.

Maybe you are looking for

  • HT3621 How do I sync my video app on iPad with iPod Touch?

    Both the iPod Touch and the iPad2 have the video apps.  I have lots of videos on my iPod Touch that I'd like to sync with the iPad so that the iPad2 would then have a copy.  Both contain the 6.1.3 IOS.  Can I do this without having to just download f

  • SQL Server 2012 with SP2 Slipstream ISO images do not install SP2

    We see the same issue as described here: http://support.microsoft.com/kb/2783963 when using the newly posted en_sql_server_2012_enterprise_edition_with_service_pack_2_x64_dvd_4351704.iso from MSDN. We end up with SQL Server 2012 RTM instead of SP2 an

  • BAPI_PO_CHANGE failing

    I am using BAPI_PO_CHANGE to add line item to the purchase order. This PO is taking reference from the SO of same company code. when i run this BAPI it gives me the following message: PO Changes Failed due to following reasons                  Changi

  • Trouble with imessage

    My iMessage works correctly with all of my contacts (that have an iphone/imessage) except for one. The one that it doesn't work for does definitely have an iphone and has imessage set up. It was working before but now it isn't. Why does it only not w

  • Solution to all of your problems (maybe)

    all i can say is update all of your stuff (software, drivers, windows, etc). Make sure your computer has no problems (spyware, viruses, etc.)(use ad-aware, spybot and ewido). Clean-up the junk and registry (www.ccleaner.com , works great). this shoul