Perfiles de dispositivo

Adobe AIR 2 y posterior

Los perfiles son un mecanismo para definir las clases de dispositivos informáticos en los que funciona la aplicación. Un perfil define un conjunto de APIs y capacidades que suelen admitirse en una clase concreta de dispositivo. Entre los perfiles disponibles se incluyen:

  • desktop

  • extendedDesktop

  • mobileDevice

  • extendedMobileDevice

  • tv

  • extendedTV

You can define the profiles for your application in the application descriptor. Users of computers and devices in the included profiles can install your application, users of other computers and devices cannot. For example, if you include only the desktop profile in your application descriptor, users can install and run your application only on desktop computers.

If you include a profile that your application does not truly support, the user experience in such environments may be poor. If you do not specify any profiles in the application descriptor, then AIR does not limit your application. You can package the application in any of the supported formats, and users with devices from any profile can install it — however, it may fail to work properly at runtime.

Where possible, profile restrictions are enforced when you package your application. For example, if you include only the extendedDesktop profile, then you cannot package your application as an AIR file — only as a native installer. Likewise, if you do not include the mobileDevice profile, you cannot package your application as an Android APK.

A single computing device can support more than one profile. For example, AIR on desktop computers support applications from both the desktop and the extendedDesktop profiles. However, an extended desktop profile application can communicate with native processes and MUST be packaged as a native installer (exe, dmg, deb, or rpm). A desktop profile application, on the other hand, cannot communicate with a native process. A desktop profile application can be packaged as either an AIR file or a native installer.

The inclusion of a feature in a profile indicates that support for that feature is common in the class of devices for which that profile is defined. However, it does not mean that every device in a profile supports every feature. For example, most, but not all, mobile phones contain an accelerometer. Classes and features that do not have universal support usually have a boolean property that you can check before using the feature. In the accelerometer case, for instance, you can test the static property Accelerometer.isSupported to determine whether the current device has a supported accelerometer.

There are following profiles can be assigned to your AIR application using the supportedProfiles element in the application descriptor:

Escritorio
El perfil de escritorio define un conjunto de capacidades para aplicaciones de AIR que se instalan como archivos de AIR en un equipo de escritorio. Estas aplicaciones se instalarán y ejecutarán en plataformas de escritorio compatibles (Mac OS, Windows y Linux). Las aplicaciones de AIR desarrolladas en versiones de AIR anteriores a AIR 2, se pueden considerar dentro del perfil de escritorio. Algunas APIs no funcionan en este perfil. Por ejemplo, las aplicaciones de escritorio no se pueden comunicar con procesos nativos.

Escritorio ampliado
El perfil de escritorio ampliado define un conjunto de capacidades para aplicaciones de AIR que están empaquetadas e instaladas con un instalador nativo. Estos instaladores nativos son archivos EXE en Windows, archivos DMG en Mac OS y archivos BIN, DEB o RPM en Linux. Las aplicaciones de escritorio ampliadas cuentan con capacidades adicionales que no están disponibles en las aplicaciones de perfil de escritorio. For more information, see Empaquetado de un instalador nativo de escritorio.

Dispositivo móvil
El perfil de dispositivo móvil define un conjunto de capacidades para las aplicaciones están instaladas en dispositivos móviles. ActionScript 3.0 y las APIs de AIR se pueden utilizar para crear aplicaciones para Android, iPhone, iPod táctil e iPad. Actualmente, estos son los únicos dispositivos que admiten aplicaciones de perfil de dispositivo móvil.

Dispositivo móvil ampliado
El perfil de dispositivo móvil ampliado define un conjunto de capacidades para las aplicaciones se instalan en un subconjunto de dispositivos móviles. Este subconjunto de dispositivos móviles puede utilizar la clase HTMLLoader además de la funcionalidad definida para el perfil de dispositivo móvil. Actualmente, no existen dispositivos que admitan este perfil.

TV
The television profile defines a set of capabilities for televisions. The profile also includes devices that use televisions as their primary display, such as Blu-ray disc players, digital video recorders, and set-top boxes. Las aplicaciones de este perfil no pueden utilizar extensiones nativas de AIR.

TV ampliada
El perfil de televisión extendido cubre los mismos tipos de dispositivos que el perfil de televisión, pero incluye funciones adicionales como, por ejemplo, extensiones nativas de AIR.

Restricción de perfiles de destino en el archivo descriptor de la aplicación

Desde AIR 2, el archivo descriptor de la aplicación incluye un elemento supportedProfiles, que permite restringir perfiles de destino. Por ejemplo, la siguiente configuración especifica que la aplicación sólo está disponible en el perfil de escritorio:
<supportedProfiles>desktop</supportedProfiles>

Cuando se establece este elemento, la aplicación sólo se puede empaquetar en los perfiles especificados. Utilice los siguientes valores:

  • desktop: perfil de escritorio.

  • extendedDesktop: perfil de escritorio ampliado.

  • mobileDevice: perfil de dispositivo móvil.

  • tv—The television profile

  • extendedTV—The extended television profile

El elemento supportedProfiles es opcional. Si no se incluye este elemento en el archivo descriptor de la aplicación, ésta se puede empaquetar e implementar para cualquier perfil.

Para especificar varios perfiles en el elemento supportedProfiles, separe cada uno de ellos con un carácter de espacio, tal y como se indica a continuación:

<supportedProfiles>desktop extendedDesktop</supportedProfiles>

Capacidades en diferentes perfiles

The following table lists the classes and features that are not supported in all profiles.

Class or Feature

desktop

extendedDesktop

mobileDevice

tv

extendedTV

Accelerometer (Accelerometer.isSupported)

No

No

Activar

No

No

Accessibility (Capabilities.hasAccessibility)

No

No

No

ActionScript 2

No

CacheAsBitmap matrix

No

No

Camera (Camera.isSupported)

No

No

CameraRoll

No

No

No

No

CameraUI (CameraUI.isSupported)

No

No

No

No

ContextMenu (ContextMenu.isSupported)

No

No

No

DatagramSocket (DatagramSocket.isSupported)

No

No

No

DockIcon (NativeApplication.supportsDockIcon)

Activar

Activar

No

No

No

Drag-and-drop (NativeDragManager.isSupported)

Activar

No

No

EncyptedLocalStore (EncyptedLocalStore.isSupported)

No

No

No

ExtensionContext

No

No

No

No

Flash Access (DRMManager.isSupported)

No

Geolocation (Geolocation.isSupported)

No

No

Activar

No

No

HTMLLoader (HTMLLoader.isSupported)

No

No

No

IME (IME.isSupported)

Activar

No

No

LocalConnection (LocalConnection.isSupported)

No

Microphone (Microphone.isSupported)

Activar

No

No

NativeMenu (NativeMenu.isSupported)

No

No

No

NativeProcess (NativeProcess.isSupported)

No

No

No

No

NativeWindow (NativeWindow.isSupported)

No

No

No

NetworkInfo (NetworkInfo.isSupported)

Activar

Apertura de archivos con la aplicación predeterminada

Limitado

No

No

No

PrintJob (PrintJob.isSupported

No

No

No

SecureSocket (SecureSocket.isSupported)

No

Activar

Activar

ServerSocket (ServerSocket.isSupported)

No

No

No

Sombreado

Limitado

No

No

Stage orientation (Stage.supportsOrientationChange)

No

No

No

No

StageVideo

No

No

No

StageWebView (StageWebView.isSupported)

No

No

Iniciar la aplicación en el inicio de sesión (NativeApplication.supportsStartAtLogin)

No

No

No

StorageVolumeInfo (StorageVolumeInfo.isSupported)

No

Activar

Activar

Modo de inactividad del sistema

No

No

No

No

SystemTrayIcon (NativeApplication.supportsSystemTrayIcon)

Activar

Activar

No

No

No

Entrada de Text Layout Framework

No

No

No

Updater (Updater.isSupported)

No

No

No

No

XMLSignatureValidator (XMLSignatureValidator.isSupported)

No

Las entradas de la tabla tienen los siguientes significados:

  • Check — The feature is supported on some, but not all devices in the profile. You should check at runtime whether the feature is supported before using it.

  • Limited — The feature is supported, but has significant limitations. See the relevant documentation for more information.

  • No — The feature is not supported in the profile.

  • Yes — The feature is supported in the profile. Note that individual computing devices make lack the hardware necessary for a feature. For example, not all phones have cameras.

Especificación de perfil al depurar con ADL

ADL comprueba si se especifican los perfiles admitidos en el elemento supportedProfiles del archivo descriptor de la aplicación. Si es así, ADL utilizará de forma predeterminada el primer perfil admitido incluido como perfil en el proceso de depuración.

Es posible especificar un perfil para la sesión de depuración de ADL utilizando el argumento de la línea de comandos -profile. (Consulte AIR Debug Launcher (ADL).) Este argumento se puede utilizar tanto si se especifica como si no un perfil en el elemento supportedProfiles en el archivo descriptor de la aplicación. No obstante, si se especifica un elemento supportedProfiles, es necesario incluir el perfil en la línea de comandos. De lo contrario, ADL genera un error.