Adobe Air Adapter
The Adobe AIR API provides much of the same functionality as the JavaScript API. For example, creating, wrapping and/or controlling applications/windows. It can listen/react to changes/events via addEventListener
and also send/receive messages over the InterApplicationBus
.
Overview
All classes are defined under the fin.desktop
package.
The DesktopConnection
is a singleton class which encapsulates a websocket connection with the OpenFin Desktop and is responsible for maintaining the lifetime of that connection, dispatching event listeners, invoking callbacks, and sending messages from AIR to the desktop.
public function DesktopConnection(uuid: String, host: String, port: String, onReady: Function, onError: Function = null
To use the API you will need to initialize the DesktopConnection
. Once initialized, you won’t need to keep or pass references to DesktopConnection
it will be automatically fetched as an when needed using DesktopConnection.getInstance();
-
uuid
would be the applications uuid that you are connecting to. -
onReady
function is called once connection is established and it’s ready for communication. At this point you can start using the rest of the API. -
onError
function which takes one string argument, and gets called if there was an error in connecting with the application with reason(String) passed to it.
The key classes that form the API are
The rest of the classes are the supporting elements for the implementation of those classes. So these classes will be a good entry point for getting familiar with the API.
Please refer to the API Documentation for further details about the functionalities provided by these classes.
To get started all you need to do is to download the openfinAirAdapter.swc and add it to your project as a library, which includes all the API classes.
For an example project please look at our Github repository.
Example
package {
import fin.desktop.System;
import fin.desktop.connection.DesktopConnection;
import flash.display.Sprite;
public class Main extends Sprite {
var connection: DesktopConnection;
public function Main() {
connection = new DesktopConnection("OpenFinJSAPITestBench", "localhost","9696" , onConnectionReady, onConnectionError);
}
private function onConnectionReady(): void{
trace("Connection Successful!");
System.getInstance().getVersion(getVersionCallback, getVersionErrorCallback);
}
private function getVersionCallback(version: String): void{
trace("version is: ", version);
}
private function getVersionErrorCallback(reason: String): void{
trace("Could not retrieve version:", reason);
}
private function onConnectionError(reason: String): void{
trace("Could not connect:", reason);
}
}
}
Have questions? Get in touch with us at [email protected].
Updated about 4 years ago