Adobe AIR 3.3包括支援本機iOS模擬器,並提供一個快速檢測和調試iOS應用程式的方法。iOS模擬器是蘋果Xcode IDE的一部分,主要用來為Mac,iPhone和iPad建立應用程式。為了更多地瞭解iOS模擬器,請參閱使用iOS模擬器。在這個功能之前,唯一在iOS上測試AIR應用程式的方法就是利用一個實際裝置和一個蘋果的開發認證。現在你不需要取得開發認證(這可能是一個非常耗時的過程)或建立設定檔就可以檢測和調試你的AIR應用程式了。一個p12認證,足以證明你的能力。注意,儘管你不再需要開發認證或設定檔來檢測和調試,你仍然需要將它們配置到iTunes。你可以參考這個連結來建立一個p12認證。正如這裡所描述的,自署名認證也可以利用Flash Builder來建立。你可以使用相同的自署名認證,用於傳統型應用程式。
為iOS模擬器打包應用程式
目前Flash builder不支援iOS模擬器,但你可以利用ADT從命令列裡訪問它。
iOS模擬器主要基於 x86架構以及兩個新加入ADT中的對象: ipa-test-interpreter-simulator ipa-debug-interpreter-simulator
為了給iOS模擬器打包應用程式,利用–package 在命令列上執行ADT並使用–target來指定其中一個目標。比如,對於檢測注釋目標你可以執行下面的: adt -package -target ipa-test-interpreter-simulator -storetype pkcs12 -keystore Certificates.p12 -storepass password Sample_ipa_name sample_ipa-app.xml sample_ipa.swf -platformsdk <path to iOS Simulator SDK >
一個通向iOS模擬器SDK的樣本路徑是 /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk
對於調試注釋目標,你可以執行以下命令: adt -package -target ipa-debug-interpreter-simulator -connect -storetype pkcs12 -keystore Certificate.p12 -storepass password Sample_ipa_name sample_ipa-app.xml sample_ipa.swf -platformsdk <path to iOS Simulator SDK>
請注意,這個偵錯目標的命令沒有指定IP地址。這是因為模擬器總是在本地機器上啟動,因此就不需要IP地址。你可以在這裡找到更多關於檢測和調試的資訊。
還要注意,在為iOS模擬器打包應用程式時,-platformsdk這裡查閱。
安裝和啟動應用程式
打包好應用程式後,你就可以利用ADT和–installApp將它安裝到iOS模擬器中,比如: adt -installApp -platform ios -platformsdk <path to iOS Simulator SDK> -device ios-simulator -package sample_ipa_name.ipa
安裝之後,你可以利用ADT和–launchApp在iOS模擬器上啟動並運行它,比如: adt -launchApp -platform ios -platformsdk <path to iOS Simulator SDK> -device ios-simulator -appid Sample_ipa_name
這個appid值被指定在應用程式描述檔案(app.xml)的<id> 標籤中。Flash Builder將appid作為應用程式的預設名。
這個應用程式可以直接通過UI來卸載。或者,你可以在命令列中使用–uninstallApp來卸載: adt -uninstallApp -platform ios -platformsdk <path to iOS Simulator SDK> -device ios-simulator -appid Sample_ipa_name
注意:如果你使用ADT卸載了一個程式,它的表徵圖仍然會保留在iOS模擬器中,直到你重新啟動模擬器。 測試iOS模擬器中的本地擴充
當你想在iOS模擬器中測試本地擴充時,使用extension.xml 檔案中的 iPhone-x86x86 平台名,並且在nativeLibrary元素中指定 library.a(靜態庫)。一定要使用靜態庫(.a檔案),它是為模擬器編譯,而不是靜態庫為裝置編譯。
以下是帶有這些設定的典型extension.xml: <extension xmlns=”http://ns.adobe.com/air/extension/3.1“> <id>com.cnative.extensions</id> <versionNumber>1</versionNumber> <platforms> <platform name=”iPhone-x86″> <applicationDeployment> <nativeLibrary>library.a</nativeLibrary> <initializer>TestNativeExtensionsInitializer</initializer> <finalizer>TestNativeExtensionsFinalizer</finalizer> </applicationDeployment> </platform> </platforms></extension>
為了給iOS模擬器打包一個本地擴充,ADT命令將如下所示: adt -package -target ane Sample_ane_name extension.xml -swc <path to SWC file> -platform iPhone-x86 library.a library.swf -platformoptions <path to platform descriptor file>
這裡的-platformoptions只在需要制定額外連結選項的時候才需要。 下一步閱讀方向
更多關於AIR和行動裝置的資訊請參看為行動裝置開發AIR應用。關於本地擴充更多的資訊,請參看AIR的本地擴充。