1: 2016-06-26 (日) 15:55:40 njf[5] [6] [7] | 現: 2016-07-25 (月) 12:40:58 njf[5] [8] [9] | ||
---|---|---|---|
Line 1: | Line 1: | ||
[[AndroidでのANEの作成]]に戻る。 | [[AndroidでのANEの作成]]に戻る。 | ||
- | このページは[[AndroidでのANEの作成2_swcの作成]]の続きです。 | + | このページは[[AndroidでのANEの作成/swcの作成]]の続きです。 |
*必要なファイル [#y1823c06] | *必要なファイル [#y1823c06] | ||
- | [[AndroidでのANEの作成1_Android側の作成]]、[[AndroidでのANEの作成2_swcの作成]]で、必要なものはそろったので、いよいよANEを作成します。 | + | [[AndroidでのANEの作成/Android側の作成]]、[[AndroidでのANEの作成/swcの作成]]で、必要なものはそろったので、いよいよANEを作成します。 |
AndroidのANEの作成で最低限必要となるファイルは、 | AndroidのANEの作成で最低限必要となるファイルは、 | ||
Line 15: | Line 15: | ||
です。 | です。 | ||
リソースなどを必要とするANEの作成の場合はもう少し増えますが、このサンプルではこれだけです。 | リソースなどを必要とするANEの作成の場合はもう少し増えますが、このサンプルではこれだけです。 | ||
+ | |||
+ | *extension.xml [#h6340912] | ||
+ | |||
+ | この必要ファイルのうちまだ制作していないのはextension.xmlだけです。 | ||
+ | ファイル名はこれでなくてもかまいませんが、サンプルなどを見ると慣習的にこの名前が多いようです。 | ||
+ | このファイルの内容を間違えると面倒なエラーとなりますので、気をつけてください。 | ||
+ | 内容は以下の通りです。 | ||
+ | |||
+ | <?xml version="1.0" encoding="utf-8" standalone="no"?> | ||
+ | <extension xmlns="http://ns.adobe.com/air/extension/22.0"> | ||
+ | <id>ANEAlert</id> | ||
+ | <versionNumber>1.0.0</versionNumber> | ||
+ | <platforms> | ||
+ | <platform name="Android-ARM"> | ||
+ | <applicationDeployment> | ||
+ | <nativeLibrary>classes.jar</nativeLibrary> | ||
+ | <initializer>njf.jp.anealert.ANEAlertFREExtension</initializer> | ||
+ | </applicationDeployment> | ||
+ | </platform> | ||
+ | </platforms> | ||
+ | </extension> | ||
+ | |||
+ | ここで「http://ns.adobe.com/air/extension/22.0」の最後の数字はAir SDKのバージョンです。間違えるとエラーとなります。 | ||
+ | |||
+ | 「id」で指定している「ANEAlert」はANEを識別するIDです。これは[[AndroidでのANEの作成/swcの作成]]で作成したSWCの「ExtensionContext.createExtensionContext」で指定したものと同一でなくてはなりません。 | ||
+ | |||
+ | 「platform name」はAndroidの場合「Android-ARM」とします。 | ||
+ | |||
+ | 「nativeLibrary」はjarファイル名です。 | ||
+ | |||
+ | 「initializer」は[[AndroidでのANEの作成/Android側の作成]]で作成したFREExtensionを継承したクラスをパッケージ名から書きます。 | ||
+ | |||
+ | *フォルダ構成とANEの作成コマンド [#t276e691] | ||
+ | |||
+ | ANEの作成ではフォルダ構成も重要となります。 | ||
+ | |||
+ | まず基点となるフォルダを作り、その下にanealert.swcとextension.xmlを置きます。さらに「android」というフォルダを作り、その下にclasses.jarとlibrary.swfを配置します。 | ||
+ | まとめると以下のようになります。 | ||
+ | |||
+ | &ref(スクリーンショット 2016-06-27 1.21.53.png,mw:480,mh:360); | ||
+ | |||
+ | anealert.swcと同じ階層で次のコマンドを実行します。 | ||
+ | |||
+ | adt -package -target ane anealert.ane extension.xml -swc anealert.swc -platform Android-ARM -C android . | ||
+ | |||
+ | 「adt」はAir SDKのbinの中にあるコマンドです。 | ||
+ | パスを通していない場合はフルパスで記述してください。 | ||
+ | |||
+ | 「 -package -target ane anealert.ane」の部分で「anealert.ane」という名前のANEの作成を宣言しています。 | ||
+ | |||
+ | 「extension.xml」は先ほど制作した設定ファイル名です。 | ||
+ | |||
+ | 「-swc anealert.swc」はSWC名を指定しています。 | ||
+ | |||
+ | 「-platform Android-ARM」はAndroidのANEであることを宣言しています。 | ||
+ | |||
+ | 「-C android」はAndroid用のファイルがある場所、つまりlibrary.swfやclasses.jarのあるandroidフォルダを示しています。 | ||
+ | |||
+ | 最後の「.」(ドット)は基点となるフォルダを表しています。 | ||
+ | |||
+ | これを実行すると「anealert.ane」が作成されるはずです。 | ||
+ | |||
+ | -[[AndroidでのANEの作成/Flashでの実際の使い方]]へ続く。 | ||
+ | -[[AndroidでのANEの作成]]に戻る。 |
(This host) = https://njf.jp