1: 2018-01-10 (水) 17:53:46 njf[6] [7] [8] | 2: 2018-01-10 (水) 18:13:25 njf[6] [9] [10] | ||
---|---|---|---|
Line 1: | Line 1: | ||
*必要なファイル [#kec4147d] | *必要なファイル [#kec4147d] | ||
- | +[[iOSでのANEの作成/iOS側の作成]]、+[[iOSでのANEの作成/swcの作成]]で、必要なものはそろったので、いよいよANEを作成します。 | + | 「[[iOSでのANEの作成/iOS側の作成]]」、「[[iOSでのANEの作成/swcの作成]]」で必要なものはそろったので、いよいよANEを作成します。 |
iOSのANEの作成で最低限必要となるファイルは、 | iOSのANEの作成で最低限必要となるファイルは、 | ||
Line 12: | Line 12: | ||
リソースなどを必要とするANEの作成の場合はもう少し増えますが、このサンプルではこれだけです。 | リソースなどを必要とするANEの作成の場合はもう少し増えますが、このサンプルではこれだけです。 | ||
- | &font(Red){制作中}; | + | *extension.xml [#u8bdf3d0] |
+ | |||
+ | この必要ファイルのうちまだ制作していないのはextension.xmlだけです。 | ||
+ | ファイル名はこれでなくてもかまいませんが、サンプルなどを見ると慣習的にこの名前が多いようです。 | ||
+ | このファイルの内容を間違えると面倒なエラーとなりますので、気をつけてください。 | ||
+ | 内容は以下の通りです。 | ||
+ | |||
+ | <extension xmlns="http://ns.adobe.com/air/extension/28.0"> | ||
+ | <id>ANEAlert</id> | ||
+ | <versionNumber>0.0.1</versionNumber> | ||
+ | <platforms> | ||
+ | <platform name="iPhone-ARM"> | ||
+ | <applicationDeployment> | ||
+ | <nativeLibrary>libanealert.a</nativeLibrary> | ||
+ | <initializer>ANEAlertInitializer</initializer> | ||
+ | </applicationDeployment> | ||
+ | </platform> | ||
+ | </platforms> | ||
+ | </extension> | ||
+ | ここで「http://ns.adobe.com/air/extension/28.0」の最後の数字はAir SDKのバージョンです。間違えるとエラーとなります。 | ||
+ | |||
+ | 「id」で指定している「ANEAlert」はANEを識別するIDです。これは[[AndroidでのANEの作成/swcの作成]]で作成したSWCの「ExtensionContext.createExtensionContext」で指定したものと同一でなくてはなりません。 | ||
+ | |||
+ | 「platform name」はiOSの場合「iPhone-ARM」とします。 | ||
+ | |||
+ | 「nativeLibrary」はライブラリファイル名です。 | ||
+ | |||
+ | 「initializer」は[[iOSでのANEの作成/iOS側の作成]]で作成した初期化関数名です。 | ||
+ | |||
+ | *フォルダ構成とANEの作成コマンド [#u4f680e6] | ||
+ | |||
+ | ANEの作成ではフォルダ構成も重要となります。 | ||
+ | |||
+ | まず基点となるフォルダを作り、その下にANEalert.swcとextension.xmlを置きます。さらに「ios」というフォルダを作り、その下にclasses.jarとlibrary.swfを配置します。 | ||
+ | まとめると以下のようになります。 | ||
+ | |||
+ | &ref(folders.jpg,mw:480,mh:360); | ||
+ | |||
+ | ANEAlert.swcと同じ階層で次のコマンドを実行します。 | ||
+ | |||
+ | adt -package -target ane aneAlert.ane extension.xml -swc ANEAlert.swc -platform iPhone-ARM -C ios . | ||
+ | |||
+ | 「adt」はAir SDKのbinの中にあるコマンドです。 | ||
+ | パスを通していない場合はフルパスで記述してください。 | ||
+ | |||
+ | 「 -package -target ane aneAlert.ane」の部分で「aneAlert.ane」という名前のANEの作成を宣言しています。 | ||
+ | |||
+ | 「extension.xml」は先ほど制作した設定ファイル名です。 | ||
+ | |||
+ | 「-swc ANEAlert.swc」はSWC名を指定しています。 | ||
+ | |||
+ | 「-platform iPhone-ARM」はiOSのANEであることを宣言しています。 | ||
+ | |||
+ | 「-C ios」はiOS用のファイルがある場所、つまりlibrary.swfやlibanealert.aのあるiosフォルダを示しています。 | ||
+ | |||
+ | 最後の「.」(ドット)は基点となるフォルダを表しています。 | ||
+ | |||
+ | これを実行すると「aneAlert.ane」が作成されるはずです。 |
(This host) = https://njf.jp