Skip to main content
Participant
March 23, 2020
Question

Migrating Adobe Flex web application to Adobe AIR package application.

  • March 23, 2020
  • 1 reply
  • 1261 views

As support for Adobe Flex is ending in 2020, we are migrating Adobe Flex web application into Adobe AIR standalone application
as steps below
Creating certificate

./adt -certificate -cn SelfSigned 1024-RSA sampleCert.p12 samplePassword

Creating AIR application

./adt -package -keystore ./sampleCert.p12 -storetype pkcs12 -target bundle AIRApp.app App-descriptor.xml App.swf

 

In many places we make call to ExternalInterface like below

ExternalInterface.call("window.location.search.toString");

and exception is thrown 

Error: Error #2067: The ExternalInterface is not available in this container. ExternalInterface requires Internet Explorer ActiveX, Firefox, Mozilla 1.7.5 and greater, or other browsers that support NPRuntime.
	at Error$/throwError()
	at flash.external::ExternalInterface$/call()

 

Is there a way to enable ExternalInterface in Adobe AIR?

    This topic has been closed for replies.

    1 reply

    Flipline
    Inspiring
    March 24, 2020

    What are you trying to accomplish with your ExternalInterface calls?  In the example you've shown, you're checking window.location, which makes sense for a web application that's running in a browser window, but AIR generates standalone applications (exe, ipa, etc.) which don't run in a browser window, so there wouldn't be anything to communicate with.

    Participant
    March 30, 2020

    Thanks for the reply Flipline.

    We are trying to migrate Flex web application with SWFObject.js javascript file which runs on Flash Plugin and to Standalone AIR application with minimal changes. Does making use of Htmlloader to load the .swf in AIR application help here? As Htmlloader creates a container for HTML content. So that window.location.search.toString becomes available.

    Inspiring
    April 1, 2020

    You can find an overview of different possibilities here
    AIR, HTML and SWF