在之前有介紹過 "使用 Air Native Extension(ANE) 在 Air Mobile App" 其中最後要產出 IPA 時必須在 Mac 電腦上執行
AIR 3.3 已經可以在 Windows 環境使用 -platformsdk 來包 iPhone 的 SDK 了
基本上步驟完全一樣 比較麻煩的是要取得 iPhoneOS 的 SDK
這篇有教如何從 Mac 抓出 SDK ((如果沒 Mac 環境 下方討論有人放了一份 SDK 快去抓吧))
一樣用之前的原生 Google Map ANE 當範例, 首先先到 Mac 把 iPhone SDK 拷貝出來 做法
- 開啟 Mac 終端機 切到放 iPhone SDK 目錄
- 指令 zip -r ./iPhoneOS43sdk.zip ./iPhoneOS4.3.sdk
- 到 Windows 把 iPhoneOS43sdk.zip 解壓縮
接下來的步驟都一樣 放 ANE, 設定 ANE ID 到 application.xml, 寫 CODE 產出 IPA
public class MapAneTest extends Sprite {
private var _nativeGoogleMap:Map;
private var _btn:Sprite = new Sprite();
private var _mType:int = 0;
public function MapAneTest() {
_btn.graphics.beginFill(0xDD0000);
_btn.graphics.drawRect(0, 0, 100, 70);
_btn.graphics.endFill();
_btn.x = (stage.stageWidth >> 1) - 50;
_btn.y = 15;
addChild(_btn);
_btn.addEventListener(MouseEvent.CLICK, function(e:MouseEvent):void {
(_mType == 2) ? _mType = 0 : _mType++;
_nativeGoogleMap.setMapType(_mType);
});
var mapVP:Rectangle = new Rectangle(0, 100, 320, 360);
_nativeGoogleMap = new Map();
_nativeGoogleMap.viewPort = mapVP;
_nativeGoogleMap.setSize(new Point(320, 360));
_nativeGoogleMap.setMapType(_mType);
_nativeGoogleMap.setZoom(15);
_nativeGoogleMap.setCenter(new LatLng(25.0361, 121.5686));
_nativeGoogleMap.visible = true;
var marker:Marker = new Marker(new LatLng(25.0361, 121.5686));
marker.title = "AIR 3.3 -platformsdk test";
marker.subtitle = "Use -platformsdk on Windows~";
_nativeGoogleMap.addOverlay(marker);
}
}
一樣最後加上 -platformsdk [iPhone sdk 目錄位置]
一樣會出現一些 warning... 不理他 安裝 IPA 到手機試試看
OK~ 一樣可以用~
