AIR applications are distributed via AIR installer files which use the air extension. When the AIR runtime is installed and an AIR installer file is opened, the runtime administers the installation process.
AIR applications first require the AIR runtime to be installed on a user's computer, just as SWF files first require the Flash Player browser plug-in to be installed.
The runtime is installed to the following location on a user's computer:
On Mac OS, to install an updated version of an application, the user needs to have adequate system privileges to install to the application directory. On Windows, a user needs to have adminstrative privileges.
The runtime can be installed in two ways: using the seamless install feature (installing directly from a web browser) or via a manual install. For more information, see Distributing, Installing, and Running AIR applications.
The seamless install feature provides developers with a streamlined installation experience for users who do not have Adobe AIR installed yet. In the seamless install method, the developer creates a SWF file that presents the application for installation. When a user clicks in the SWF file to install the application, the SWF file attempts to detect the runtime. If the runtime cannot be detected it is installed, and the runtime is activated immediately with the installation process for the developer's application.
Alternatively, the user can manually download and install the runtime before opening an AIR file. The developer can then distribute an AIR file by different means (for instance, via e-mail or an HTML link on a website). When the AIR file is opened, the runtime begins to process the application installation.
For more information on this process, see Distributing, Installing, and Running AIR applications.
The AIR security model allows users to decide whether to install an AIR application. The AIR install experience provides several improvements over native application install technologies that make this trust decision easier for users:
In general, users should not install any desktop application that comes from a source that they do not trust, or that cannot be verified. The burden of proof on security for native applications is equally true for AIR applications as it is for other installable applications.
The installation directory can be set using one of the following two options:
If the developer specifies an installFolder setting in the application descriptor file, the application is installed to a subpath of this directory.
The install process for AIR applications copies all files that the developer has included within the AIR installer file onto the user's local machine. The installed application is composed of:
An AIR application is run by:
The application file system also includes subdirectories related to the function of the application. For example, information written to encrypted local storage is saved to a subdirectory in a directory named after the application identifier (appId) of the application.
AIR applications have privileges to write to any location on the user's hard drive; however, developers are encouraged to use the app-storage:/ path for local storage related to their application. Files written to app-storage:/ from an application are located in a standard location depending on the user's operating system:
You can access the application storage directory via the air.File.applicationStorageDirectory property. You can access its contents using the resolvePath() method of the File class. For details, see Working with the file system.
When the user installs an AIR application that requires an updated version of the AIR runtime, the AIR runtime automatically installs the required runtime update.
To update the runtime, a user needs to have administrative privileges for the computer.
Development and deployment of software updates are one of the biggest security challenges facing native code applications. The AIR API provides a mechanism to improve this: the Updater.update() method can be invoked upon launch to check a remote location for an AIR file. If an update is appropriate, the AIR file is downloaded, installed, and the application restarts. Developers can use this class not only to provide new functionality but also respond to potential security vulnerabilities.
A user can uninstall an AIR application:
Removing an AIR application removes all files in the application directory. However, it does not remove files that the application may have written to outside of the application directory. Removing AIR applications does not revert changes the AIR application has made to files outside of the application directory.
AIR can be uninstalled:
On Windows, administrators can configure a machine to prevent (or allow) AIR application installation and runtime updates. These settings are contained in the Windows registry under the following key: HKLM\Software\Policies\Adobe\AIR. They include the following:
|
Registry setting |
Description |
|---|---|
|
AppInstallDisabled |
Specifies that AIR application installation and uninstallation are allowed. Set to 0 for "allowed," set to 1 for "disallowed." |
|
UntrustedAppInstallDisabled |
Specifies that installation of untrusted AIR applications (applications that do not includes a trusted certificate) is allowed (see Digitally signing an AIR file). Set to 0 for "allowed," set to 1 for "disallowed." |
|
UpdateDisabled |
Specifies that updating the AIR runtime is allowed, either as a background task or as part of an explicit installation. Set to 0 for "allowed," set to 1 for "disallowed." |