昨日の記事の補足です。
StickSports / ANE-Silent-Switch
↑こちらのtestプロジェクトをビルドをなんとかwindowsでできないかと再挑戦しましたがやっぱり無理だったというお話。
(AIR SDK 3.2でのお話です)
昨日はスルーしていた開発者が指示しているビルド方法を試しました。
Antビルドスクリプトのテスト/ build.xmlをビルドし実行します。これは、テストの/ binフォルダ内のテストのIPAを作成します。
Antなにそれ?状態でしたが、FlashBuilderからAntの実行ができます。
手順としては、
1.何でもいいからプロジェクトを一個作る。
(AS3プロジェクトを作りました)
2.プロジェクトにANE-Silent-SwitchからDLしたデータを突っ込む
(具体的には[test][bin]の3つのフォルダ)
3.test/build.xmlの修正
これはUNIX向けのANTらしいのでそのまま実行するとWindowsでエラーります。
test/buildフォルダ内build.xmlを2箇所修正します。
<!--12行目内の"amxmlc"の後ろに".bat"を追加-->
<exec executable="${sdk.home}/bin/amxmlc.bat" failonerror="true" dir="../bin">
<!--35行目内の"adt"の後ろに".bat"を追加-->
<exec executable="${sdk.home}/bin/adt.bat" failonerror="true" dir="../bin">
4.設定ファイルへの記述
test/buildフォルダ内にexample.build.configがあります。
ここにflexsdkのパスやらipaにパッケージする際の証明書ファイル(.p12)やモバイルプロビジョニングファイルのパスやら、iossdkのパスを設定します。
さらにファイル名をexample.build.config→build.configと変更します。
(ボクの設定例)
# The location of the flex sdk with Air 3.1 or later
sdk.home = E:/00_flash/flex_sdk_4.6_air3.2
# The location of the .p12 developer certificate file
ios.keystore.file = E:/cert/hoge.p12
# The password of the .p12 developer certificate file
ios.keystore.password = passpass
# Provisioning profile
ios.provisioning.profile = E:/cert/forTest.mobileprovision
# The iOS SDK location
ios.sdk = E:/iPhoneOS51/
※iossdkは別途macに入ってるXcode4.3の中から持ってきました。
5.buld.xmlの実行
test/build.xmlにカーソルを合わせて右クリック→実行でantの実行ができます。
がしかし、全ての設定を正しくしていてもエラーになるのです。
FlashBuilderのコンソールにたくさん表示される中の一文で
-platformsdk option for IPA targets is supported only on Mac
とでてまして、つまりはmacでしかiosのsdk指定はできないよ、と。
もちろん全てのaneが使えないということじゃないけども、昨日書いたように
ld warning: unexpected srelocation type 9
このエラーがでちゃったらもうane自体をXcode4.1でビルドしなおすか、aneはそのままでやるなら、ipaのビルドはmacを使う(iossdkを指定して)しかないっぽい。
windows一本でやりたいのになぁ、残念。