Alcune API di ActionScript 3.0 non sono disponibili per applicazioni in esecuzione nel profilo per dispositivi mobili (ad esempio, applicazioni in esecuzione sull'iPhone).
Se utilizzate lo stesso codice ActionScript per sviluppare più profili (ad esempio, desktop e mobile), utilizzate codice per provare se un'API è supportata. Ad esempio, la classe NativeWindow non è supportata nelle applicazioni iPhone. (Le applicazioni iPhone non possono utilizzare o creare finestre native.) Per provare se un'applicazione è in esecuzione su un profilo che supporta finestre native (ad esempio, profilo desktop), controllate la proprietà
NativeWindow.isSupported
.
Nella tabella seguente sono elencate le API che non sono supportate nel profilo per dispositivi mobili. Inoltre, contiene un elenco delle proprietà che è possibile controllare per determinare quando un'applicazione è in esecuzione su una piattaforma che offre il supporto per un'API.
API
|
Prova per supporto
|
Accessibility
|
Capabilities.hasAccessibility
|
Camera
|
Camera.isSupported
|
DatagramSocket
|
DatagramSocket.isSupported
|
DNSResolver
|
DNSResolver.isSupported
|
DockIcon
|
NativeApplication.supportsDockIcon
|
DRMManager
|
DRMManager.isSupported
|
EncryptedLocalStore
|
EncryptedLocalStore.isSupported
|
HTMLLoader
|
HTMLLoader.isSupported
|
LocalConnection
|
LocalConnection.isSupported
|
Microphone
|
Microphone.isSupported
|
NativeApplication.exit()
|
—
|
NativeApplication.menu
|
NativeApplication.supportsMenu
|
NativeApplication.isSetAsDefaultApplication()
|
NativeApplication.supportsDefaultApplication
|
NativeApplication.startAtLogin
|
NativeApplication.supportsStartAtLogin
|
NativeMenu
|
NativeMenu.isSupported
|
NativeProcess
|
NativeProcess.isSupported
|
NativeWindow
|
NativeWindow.isSupported
|
NativeWindow.notifyUser()
|
NativeWindow.supportsNotification
|
NetworkInfo
|
NetworkInfo.isSupported
|
PDF support
|
HTMLLoader.pdfCapability
|
PrintJob
|
PrintJob.isSupported
|
SecureSocket
|
SecureSocket.isSupported
|
ServerSocket
|
ServerSocket.isSupported
|
Shader
|
—
|
ShaderFilter
|
—
|
StorageVolumeInfo
|
StorageVolumeInfo.isSupported
|
XMLSignatureValidator
|
XMLSignatureValidator.isSupported
|
Non potete scrivere applicazioni AIR basate su HTML e JavaScript per il profilo per dispositivi mobili.
Alcune classi ActionScript 3.0 sono supportate solo parzialmente:
File
Le applicazioni iPhone possono accedere solo alla directory dell'applicazione e alla directory di archiviazione dell'applicazione. Potete anche chiamare i metodi
File.createTempFile()
e
File.createTempDirectory()
. La chiamata di un'operazione per accedere a un'altra directory (ad esempio, un metodo di lettura o scrittura FileStream) determina un'eccezione IOError.
Le applicazioni iPhone non supportano finestre di dialogo del browser dei file nativi, ad esempio quella fornita dal metodo
File.browseForOpen()
.
Loader
In un'applicazione iPhone, non potete utilizzare il metodo
Loader.load()
e nemmeno eseguire codice ActionScript nel contenuto SWF caricato con il metodo
Loader.load()
. Potete, tuttavia, utilizzare risorse nel file SWF (ad esempio, clip filmato, immagini, caratteri e audio nella libreria), nonché utilizzare il metodo
Loader.load()
per caricare file immagine.
Video
Solo i video Sorensen e ON2 VP6 sono supportati all'interno di un'applicazione AIR nell'iPhone.
Potete utilizzare il metodo
navigateToURL()
per aprire un video H.264 esternamente all'applicazione. Come parametro
request
, passate un oggetto URLRequest con un URL che fa riferimento al video. Il video viene avviato nel lettore video dell'iPhone.
API non supportate e debug utilizzando ADL
Alcune funzionalità AIR che non sono supportate sull'iPhone sono ancora disponibili quando si esegue il test di un'applicazione utilizzando ADL (sul computer di sviluppo). Tenete presente queste differenze quando eseguite il test del contenuto utilizzando ADL.
Questa funzionalità include i codec video e audio seguenti: Speex (audio), H.264/AVC (video) e AAC (audio). Questi codec non sono disponibili nelle applicazioni AIR in esecuzione sull'iPhone. Tuttavia, continuano a funzionare normalmente sul desktop.
L'accessibilità e il supporto screen reader funziona in ADL per Windows. Tuttavia, queste API non sono supportate sull'iPhone.
Il protocollo RTMPE funziona normalmente se utilizzato da ADL sul desktop. Tuttavia, un NetConnection non è in gradi connettersi utilizzando il protocollo RTMPE sull'iPhone.
La classe Loader funziona senza limitazioni aggiuntive quando il contenuto viene eseguito con ADL. Tuttavia, quando viene eseguita sull'iPhone, il tentativo di caricare contenuto SWF che contiene bytecode ActionScript determina un messaggio di errore.
Le istanze Shader vengono eseguite in ADL. Tuttavia, sull'iPhone il bytecode Pixel Bender non viene interpretato e gli shader non hanno effetti grafici.
Per ulteriori informazioni, vedete
Debug di un'applicazione iPhone
.