I profili sono un meccanismo per definire le classi dei dispositivi informatici sui quali viene eseguita l'applicazione. Un profilo definisce una serie di API e di funzionalità tipicamente supportate in una particolare classe di dispositivo. I profili disponibili sono:
-
desktop
-
extendedDesktop
-
mobileDevice
-
extendedMobileDevice
Potete definire i profili per l'applicazione specificandoli nel descrittore dell'applicazione. Gli utenti di computer e dispositivi corrispondenti ai profili specificati possono installare l'applicazione, gli utenti di altri computer e dispositivi no. Ad esempio, se includete solo il profilo desktop nel descrittore dell'applicazione, gli utenti possono installare ed eseguire l'applicazione solo sui computer desktop.
Se includete un profilo che l'applicazione non supporta veramente, l'esperienza dell'utente in tali ambiente potrebbe risentirne. Se non specificate nessun profilo nel descrittore dell'applicazione, AIR non pone alcun limite all'applicazione. Potete creare il pacchetto dell'applicazione in uno qualsiasi dei formati supporti e gli utenti potranno installarla sui dispositivi di qualunque profilo, tuttavia potrebbe non funzionare in fase runtime.
Quando è possibile, le restrizioni relative ai profili vengono applicate al momento della creazione del pacchetto dell'applicazione. Ad esempio, se includete solo il profilo extendedDesktop, non potete creare il pacchetto dell'applicazione in formato AIR, bensì solo come programma di installazione nativo. Analogamente, se non includete il profilo mobileDevice, non potete impacchettare l'applicazione nel formato APK di Android.
Un singolo dispositivo informatico può supportare più di un profilo. Ad esempio, AIR su computer desktop supporta le applicazioni scritte per i profili desktop e extendedDesktop. Tuttavia, un'applicazione associata al profilo extendedDesktop può comunicare con processi nativi e DEVE essere impacchettata come programma di installazione nativo (exe, dmg, deb o rpm). Un'applicazione del profilo desktop, al contrario, non ha la possibilità di comunicare con un processo nativo e può essere impacchettata sia come file AIR che come programma di installazione nativo.
L'inclusione di una determinata funzione in un profilo indica che il supporto di tale funzione è comune nella classe di dispositivi per la quale tale profilo è definito. Tuttavia, non significa che ogni dispositivo del profilo supporta ogni funzione. Ad esempio, alcuni telefoni cellulari, ma non tutti, contengono un accelerometro. Le classi e le funzioni che non dispongono di supporto universale solitamente hanno una proprietà booleana che può essere verificata prima di utilizzare la funzione. Nel caso dell'accelerometro, ad esempio, è possibile testare la proprietà statica
Accelerometer.isSupported
per determinare se il dispositivo corrente è dotato di un accelerometro supportato.
I profili seguenti possono essere assegnati all'applicazione AIR utilizzando l'elemento supportedProfiles nel descrittore dell'applicazione:
-
Desktop
-
Il profilo desktop definisce un set di funzionalità per le applicazioni AIR che vengono installate come file AIR su un computer desktop. Queste applicazioni vengono installate ed eseguite sulle piattaforme desktop supportate (Mac OS, Windows e Linux). Le applicazioni AIR sviluppate nelle versioni di AIR precedenti ad AIR 2 possono essere considerate applicazioni con profilo desktop. Alcune API non funzionano in questo profilo. Ad esempio, le applicazioni desktop non possono comunicare con i processi nativi.
-
Desktop esteso
-
Il profilo desktop esteso definisce un set di funzionalità per le applicazioni AIR che vengono impacchettate e installate sotto forma di programma di installazione nativo. I programmi di installazione nativi sono file EXE in Windows, DMG in Mac OS e BIN, DEB o RPM in Linux. Le applicazioni con profilo desktop esteso sono dotate di funzionalità aggiuntive non disponibili per le applicazioni con profilo desktop. Per ulteriori informazioni, vedete
Creazione del pacchetto di un file di installazione nativo desktop
.
-
Dispositivo mobile
-
Il profilo dispositivo mobile definisce un set di funzionalità per le applicazioni che vengono installate sui dispositivi mobili, ad esempio telefoni cellulari e tablet. Queste applicazioni vengono installate ed eseguite sulle piattaforme mobili supportate (Android, Blackberry Tablet OS e iOS).
-
Dispositivo mobile esteso
-
Il profilo dispositivo mobile esteso definisce un set di funzionalità esteso per le applicazioni che vengono installate sui dispositivi mobili. Attualmente, nessun dispositivo supporta questo profilo.
Restrizione dei profili target nel file descrittore dell'applicazione
A partire da AIR 2, il file descrittore dell'applicazione comprende un elemento
supportedProfiles
che consente di assegnare una restrizione ai profili target. L'impostazione seguente, ad esempio, specifica che l'applicazione è disponibile solo nel profilo desktop:
<supportedProfiles>desktop</supportedProfiles>
Se questo elemento è impostato, l'applicazione può essere associata solo ai profili elencati. Utilizzate i seguenti valori:
-
desktop
- Profilo desktop
-
extendedDesktop
- Profilo desktop esteso
-
mobileDevice
- Profilo dispositivo mobile
L'elemento
supportedProfiles
è opzionale. Se non includete questo elemento nel file descrittore dell'applicazione, quest'ultima può essere compilata e distribuita con tutti i profili.
Per specificare più profili nell'elemento
supportedProfiles
, separateli con uno spazio come nell'esempio seguente:
<supportedProfiles>desktop extendedDesktop</supportedProfiles>