Os perfis são um mecanismo para definir as classes de dispositivos de computação onde funciona seu aplicativo. Um perfil define um conjunto de APIs e de recursos normalmente disponíveis em uma classe particular do dispositivo. Os perfis disponíveis incluem:
-
desktop
-
extendedDesktop
-
mobileDevice
-
extendedMobileDevice
Você pode definir os perfis para seu aplicativo no descritor do aplicativo. Usuários de computadores e dispositivos em perfis incluídos podem instalar o aplicativo; usuários de outros computadores e dispositivos não podem. Por exemplo, se você incluir somente o perfil desktop no descritor do aplicativo, os usuários podem instalar e executar o aplicativo apenas em computadores desktop.
Se você incluir um perfil que seu aplicativo não seja realmente compatível, a experiência do usuário em tais ambientes podem ser pobres. Se você não especificar nenhum perfil no descritor do aplicativo, o AIR não limitará o aplicativo. Você pode compactar o aplicativo em qualquer um dos formatos compatíveis, e os usuários com dispositivos de qualquer perfil podem instalá-lo - porém, pode não funcionar corretamente em runtime.
Sempre que possível, são impostas restrições de perfil ao compactar o aplicativo. Por exemplo, se você incluir somente o perfil extendedDesktop, não poderá compactar o aplicativo como um arquivo AIR - apenas como um instalador nativo. Da mesma forma, se você não incluir o perfil MobileDevice, não poderá compactar o aplicativo como um APK do Android.
Um único dispositivo de computação pode ser compatível com mais de um perfil. Por exemplo, o AIR em computadores desktop são compatíveis com aplicativos de perfis desktop e extendedDesktop. No entanto, um aplicativo de perfil desktop estendido pode se comunicar com processos nativos e DEVE ser compactado como um instalador nativo (exe, dmg, deb ou rpm). Um aplicativo com perfil desktop, por outro lado, não pode se comunicar com um processo nativo. Um aplicativo com perfil desktop pode ser compactado como um arquivo AIR ou um instalador nativo.
A inclusão de um recurso em um perfil indica que o suporte para esse recurso é comum na classe de dispositivos para a qual esse perfil está definido. No entanto, isso não significa que cada dispositivo em um perfil seja compatível com todos os recursos. Por exemplo, a maioria (mas não todos) dos telefones móveis contém um acelerômetro. Classes e recursos que não têm suporte universal geralmente têm uma propriedade booliana que você pode verificar antes de usar o recurso. No caso do acelerômetro, por exemplo, você pode testar a propriedade estática
Accelerometer.isSupported
para determinar se o dispositivo atual tem um acelerômetro compatível.
Os perfis a seguir podem ser atribuídos ao aplicativo do AIR usando o elemento supportedProfiles no descritor do aplicativo:
-
Área de trabalho
-
O perfil desktop define um conjunto de capacidades para os aplicativos AIR, que são instaladas como arquivos AIR em um computador pessoal. Estes aplicativos são instalados e executados nas plataformas de computador pessoal suportadas (sistemas operacionais Mac, Windows e Linux). Os aplicativos AIR desenvolvidos em versões do AIR anteriores a AIR 2 podem ser considerados inseridos no perfil desktop. Algumas APIs não funcionam neste perfil. Por exemplo, os aplicativos de computação pessoal não podem se comunicar com processos nativos.
-
Desktop estendido
-
O perfil desktop estendido define um conjunto de capacidades para os aplicativos AIR que compõem o pacote e são instaladas com um programa de instalação nativo. Estes programas de instalação nativos são arquivos EXE no Windows, arquivos DMG no Mac OS, e arquivos DEB ou RPM no Linux. Os aplicativos com o perfil desktop estendido têm capacidades adicionais que não estão disponíveis nos aplicativos com o perfil desktop. Para obter mais informações, consulte
Compactação de um instalador desktop nativo
.
-
Dispositivo móvel
-
O perfil dispositivo móvel define um conjunto de capacidades para aplicativos que são instalados em dispositivos móveis, tais como telefones celulares e tablets. Esses aplicativos são instalados e executados em plataformas móveis suportadas, incluindo Android, Blackberry Tablet OS e iOS.
-
Dispositivo móvel estendido
-
O perfil dispositivo móvel define um extenso conjunto de capacidades para aplicativos que são instalados em dispositivos móveis. Atualmente, não existem dispositivos que suportam este perfil.
Como restringir perfis de destino no arquivo de descrição do aplicativo
Como no AIR 2, o arquivo de descrição do aplicativo inclui um elemento
supportedProfiles
, que permite restringir perfis de destino. Por exemplo, a seguinte configuração especifica que o aplicativo somente está disponível no perfil desktop.
<supportedProfiles>desktop</supportedProfiles>
Quando este elemento é definido, o aplicativo pode ser empacotado nos perfis que você listar. Use os seguintes valores:
-
desktop
— O perfil desktop
-
extendedDesktop
— O perfil desktop estendido
-
mobileDevice
— O perfil dispositivo móvel
O elemento
supportedProfiles
é opcional. Quando você não incluir este elemento no arquivo e descrição do aplicativo, o aplicativo poderá ser compilado e implementado para qualquer perfil.
Para especificar vários perfis no elemento
supportedProfiles
, separe cada um com um caractere de espaço como no exemplo a seguir:
<supportedProfiles>desktop extendedDesktop</supportedProfiles>