Vissa ActionScript 3.0-API:er stöds inte för program som körs i mobilenhetens profil (till exempel program som körs på en iPhone).
När du använder samma ActionScript-kod för att utveckla till flera olika profiler (till exempel för datorer och mobila enheter) kan du använda kod för att testa om en API stöds eller inte. Klassen NativeWindow stöds till exempel inte i iPhone-program. (iPhone-program kan inte använda eller skapa inbyggda fönster.) Om du vill testa om ett program körs på en profil som stöder inbyggda fönster (till exempel för en dator), kontrollerar du egenskapen
NativeWindow.isSupported
.
Följande lista visar vilka API:er som inte stöds i mobilenhetens profil. I tabellen visas också egenskaper som du kan kontrollera för att avgöra om ett program körs på en plattform med stöd för ett API.
API
|
Egenskap att testa
|
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
|
Du kan inte skriva HTML- eller JavaScript-baserade AIR-program för mobilenhetens profil.
Vissa ActionScript 3.0-klasser stöds endast delvis:
Fil
iPhone-program har endast åtkomst till programkatalogen och lagringskatalogen för programmet. Du kan också anropa
File.createTempFile()
och
File.createTempDirectory()
. Om du anropar en åtgärd för att få åtkomst till en annan katalog (till exempel en läs- eller skrivmetod för FileStream) inträffar ett IOError-undantag.
I iPhone-program stöds inte inbyggda dialogrutor för filbläddring, till exempel en sådan som fås genom metoden
File.browseForOpen()
.
Loader
I ett iPhone-program kan du inte använda metoden
Loader.load()
. Med metoden
Loader.load()
kan du emellertid inte köra ActionScript-kod i SWF-innehåll. Du kan använda resurser i SWF-filen (till exempel filmklipp, bilder, teckensnitt och ljud i biblioteket). Du kan även använda metoden
Loader.load()
för att läsa in bildfiler.
Video
Endast Sorensen-video och ON2 VP6-video stöds i AIR-program på iPhone.
Du kan använda metoden
navigateToURL()
för att öppna en H.264-video utanför programmet. Som
request
-parameter skickar du ett URLRequest-objekt med en URL som pekar till videon. Videon öppnas i videospelaren på iPhone-enheten.
API:er som inte stöds och felsökning med ADL
Viss AIR-funktionalitet som inte stöds i iPhone finns dock tillgänglig för testning av program där ADL används (på utvecklingsdatorn). Var uppmärksam på dessa skillnader när du testar innehåll med ADL.
Denna funktionalitet innehåller följande program för video- och ljudavkodning: Speex (ljud), H.264/AVC (video) och AAC (ljud). Dessa avkodningsprogram är inte tillgängliga för AIR-program som körs på iPhone. De kommer emellertid att fungera normalt på en dator.
Stöd för hjälpmedel och skärmläsare fungerar i ADL på Windows. Dessa API:er stöds emellertid inte på iPhone.
RTMPE-protokollet fungerar normalt när det används från ADL på datorn. Däremot fungerar inte ett NetConnection som försöker ansluta till iPhone med RTMPE-protokollet.
Klassen Loader fungerar utan ytterligare begränsningar när innehållet körs med ADL. När den körs på iPhone kommer försök att läsa in SWF-innehåll med ActionScript-bytekod att resultera i ett felmeddelande.
Shader-instanser körs i ADL. Pixel Bender-bytekod på iPhone kan inte tolkas och skuggningar har ingen grafisk effekt.
Mer information finns i
Felsöka ett iPhone-program
.