Mobil aygıt profilinde çalışan uygulamalar (iPhone'da çalışan uygulamalar gibi) için desteklenmeyen bazı ActionScript 3.0 API'leri
Birden fazla profil (masaüstü ve mobil gibi) geliştirmek için aynı ActionScript kodunu kullanırken, kodu API'nin desteklenip desteklenmediğini test etmek için kullanın. Örneğin, iPhone uygulamalarında NativeWindow sınıfı desteklenmez. (iPhone uygulamaları yerel pencere kullanamaz veya oluşturamaz.) Bir uygulamanın yerel pencereleri destekleyen bir profilde çalışıp çalışmadığını test etmek için (masaüstü profili gibi),
NativeWindow.isSupported
özelliğini kontrol edin.
Aşağıdaki tabloda mobil aygıt profilinde desteklenmeyen API'ler listelenmektedir. Tabloda aynı zamanda bir uygulamanın API desteği sunan bir platformda ne zaman çalışacağını belirlemek için kontrol edeceğiniz özellikler de listelenmektedir.
API
|
Destek testi
|
Erişilebilirlik
|
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 desteği
|
HTMLLoader.pdfCapability
|
PrintJob
|
PrintJob.isSupported
|
SecureSocket
|
SecureSocket.isSupported
|
ServerSocket
|
ServerSocket.isSupported
|
Shader
|
—
|
ShaderFilter
|
—
|
StorageVolumeInfo
|
StorageVolumeInfo.isSupported
|
XMLSignatureValidator
|
XMLSignatureValidator.isSupported
|
Mobil aygıt profili için HTML ve JavaScript temelli AIR uygulamaları yazamazsınız.
Bazı ActionScript 3.0 sınıfları sadece kısmen desteklenir:
File
iPhone uygulamalarının sadece uygulama dizinine ve uygulama depolama dizinine erişimi vardır. Aynı zamanda
File.createTempFile()
ve
File.createTempDirectory()
işlemlerini kullanabilirsiniz. Başka bir dizine erişmek için bir işlemi (bir FileStream okuma veya yazma yöntemi gibi) kullanmak IOError istisnasıyla sonuçlanır.
iPhone uygulamaları
File.browseForOpen()
yöntemiyle sağlananlar gibi yerel dosya tarayıcı iletişim kutularını desteklemez.
Yükleyici
Bir iPhone uygulamasında
Loader.load
yöntemini kullanamazsınız. Ancak,
Loaded.load
yöntemiyle yüklenmiş SWF içeriğinde hiçbir ActionScript kodunu çalıştıramazsınız. Ancak, SWF dosyasındaki varlıkları kullanabilirsiniz (örn. kütüphanedeki film klipleri, görüntüler, fontlar ve sesler). Ayrıca görüntü dosyalarını yüklemek için de
Loader.load
yöntemini kullanabilirsiniz.
Video
iPhone'daki bir AIR uygulamasında sadece Sorensen video ve ON2 VP6 video desteklenir.
Uygulamanın dışında bir H.264 video açmak için
navigateToURL()
yöntemini kullanabilirsiniz.
request
parametresi olarak videoya işaret eden bir URL içeren URLRequest nesnesi geçin. Video, iPhone aygıtının video oynatıcısında başlar.
Metin alanları
iPhone'daki fontlar ve diğer metin alanı ayarları için kısıtlamalar bulunmaktadır. Bkz.
Fontlar ve metin girdisi
.
Desteklenmeyen API'ler ve ADL kullanarak hata ayıklama
iPhone'da desteklenmeyen bazı AIR işlevleri, ADL kullanarak uygulamayı test ederken hala kullanılabilir (geliştirme yapılan bilgisayarda). ADL kullanarak içerik test ederken bu farklara dikkat edin.
Bu işlevler, aşağıdaki video ve ses kod çözücülerini içerir: Speex (ses), H.264/AVC (video) ve ACC (ses). Bu codec'ler iPhone'da çalışan AIR uygulamalarında kullanılamaz. Ancak, masaüstünde normal olarak çalışmaya devam ederler.
Ulaşılabilirlik ve ekran okuyucu desteği Windows'taki ADL'de çalışır. Ancak bu API'ler iPhone'da desteklenmez.
RTMPE protokolü, masaüstündeki ADL'den kullanıldığında normal olarak çalışır. Ancak, RTMPE protokolü kullanarak bağlanmaya çalışan bir NetConnection öğesi iPhone'da bunu başaramaz.
İçerik ADL ile çalıştırıldığında Loader sınıfı ek kısıtlamalar olmadan çalışır. Ancak iPhone'da çalıştırılırken ActionScript bit kodu içeren SWF içeriğinin yüklenmeye çalışılması hata mesajıyla sonuçlanır.
Gölgelendirici, örnekleri ADL'de çalıştırılır. Ancak iPhone Pixel Bender'da bit kodu yorumlanmaz ve gölgelerin grafik efekti olmaz.
Daha fazla bilgi için bkz.
Bir iPhone uygulamasında hata ayıklama
.