ANE For Mobage Native SDKサンプルコードのご紹介

はじめまして、テクニカルコンサルティンググループのホセといいます。

テクニカルコンサルティンググループではパートナーデベロッパー様の技術サポートやTechnical Evangelistなどの活動をしております。

今回、第4回目のブログとしてANE For Mobage Native SDKのサンプルコードを紹介させていただきます。

ANE(AIR Native Extension) For Mobage Native SDKと聞いてピンと来ない人のために分かりやすく説明すると、当社のMobage Native SDKのAPIをラッピングして、Adobe AIRからこれらのAPIが呼べるようにしたものです。

Mobage Native SDKの全てのAPIを使えるようになっていますので、APIのレファレンス情報はMobage Native SDK側を確認してみてください。

今回テクニカルコンサルティンググループからANE For Mobage Native SDKの制作とGitHub公開を行ったのは、市場に数多く存在する優秀なFLASHエンジニアの皆さんに、ぜひMobileゲームの制作に取り組んで欲しいと考えたからです!

GitHubのリンクはこちらです(もちろんオープンソースです!)。

https://github.com/DeNADev/ANE4MobageNativeSDK*MITライセンス)

ANE.png

ここで発生するのが「なぜ、サンプルコードなの?」という疑問です。一番の理由は、オープンソース化(サンプルコード)することでパートナーデベロッパー様が自分のアプリケーションに合わせて自由にカスタマイズしたり、問題が発生してもソースコードの提供に伴って問題解決にいち早く対応可能になる。結果的に開発がスムーズに進み、開発期間も短縮できるのでは?という思いもあってオープンソースにしました。

SDK化はもちろん考えましたが、今後の応用性も考えたらやはりオープンソース!ということで決まりました。

尚、今回のANE For Mobage Native SDKを利用している当社のゲームとして「パズ億 ~世界一周編~」がありますのでぜひ遊んでみてください!

http://www.mbga.jp/_game_intro?game_id=12015865

pazok.png

ANEをビルドしてみよう

さて、ANE For Mobage Native SDKのサンプルコードを実際にANEとしてビルドまでやってみましょう。

まず、はじめにビルド環境の確認が必要ですので以下の環境が設定されているかどうか確認してください。

- Mac OS X 10.9 (10.8も可能)

- Adobe Flash Builder 4.7

- Adobe AIR SDK 3.9 以上 (FlexとCompiler)

- Xcode 5

- Android Developers Tools 21 以上 (コード編集の場合はEclipse Juno以上)

- Apache Ant

特にADTやAntについては、環境変数を設定していないとビルドに失敗しますので注意してください。ADTに関しては「$ADT_PATH/sdk/tools」まで環境変数が通っていることが必要です。

その他に環境設定でつまずくところとして、Flexのアップデートがあります。AdobeのサイトからFlexアップデート用のAIR SDKをダウンロードして、ただ単に「AIRSDK」のフォルダを上書きしてしまうと必要なライブラリーも消えてしまうため、 フォルダの上書きではなくファイル単位で上書きするように注意してください。

次にGitHubからレポジトリーをローカルに「clone」しましょう。

Gitコマンドでは:

$ git clone https://github.com/DeNADev/ANE4MobageNativeSDK.git

クローン後はMobage Developers Japan(デベロッパーサイト) (http://developer.dena.jp/mbga/) からMobage Native SDK 1.4.6.Xをダウンロードし、ローカルに解凍しましよう。

あとは、設定ファイルを設定すればANEのビルドが可能になります。

設定ファイルは「clone」したレポジトリのルートフォルダに「common.mk」というファイルがあります。設定ファイル以下のようになっていると思います。

ここで編集するのは「MOBAGE_SDK_PATH」のみのはずで、先ほど解凍したMobage Native SDK 1.4.6.Xのファイルパスをここに入力してもらえば良いです。

さて、環境は整えたのでさっそくANEをビルドしてみましょう。

コマンドラインからANE For Mobage Native SDKのルートフォルダに行き、以下のコマンドを叩くだけでANEが自動でビルドされます。

$make toggle-jp DEBUG=1

上記の「toggle-jp」は日本のMobage Native SDKを指しており、「DEBUG=1」はデバッグ用のANEとなります。デバッグ用のANEは単にiOS側のログにデバッグ情報を出力するようにしており、Android側は特にデバッグの設定はありません。

今回ビルドされたANEは「as/ANE4MobageSDK.ane」になりますので、あとはFlash BuilderにてANEをインポートすることでMobage Native SDKのAPIをAS側から呼び出すことが可能になります。

# Common variables for making ANE for Mobage Native SDK

# Path to Mobage Native SDK
MOBAGE_SDK_PATH="Your_PATH_To_NATIVE_SDK/mobage-nativesdk-1.4.5-20131105-g6193da8"

# Path to FlashRuntimeExtension.jar bundled with Adobe Flash Builder
FLASH_RUNTIME_EXT_JAR_PATH="/Applications/Adobe Flash Builder 4.7/sdks/4.6.0/lib/android/FlashRuntimeExtensions.jar"

# Path to Adobe Flash SDK 4.6.0
FLASH_SDK_PATH="/Applications/Adobe Flash Builder 4.7/sdks/4.6.0"

# simulator sdk version
IOS_SIMULATOR_SDK_VERSION=iphonesimulator6.1

AS側のサンプルコードは「samples」というフォルダにあります、またANEのインポート方法に関しては「docs」のフォルダ内にpdfの資料があるので参考にしてもらえばと思います。

今回作成したANE For Mobage Native SDKを使って、ガンガンAdobe AIRのゲームを作ってください!!

その他、もし問題を見つけたらGithub上でIssueとして挙げてください。直接修正していただいた場合はpull-requestを送って頂いても問題ありません。

 

少し長くなりましたが、今回のブログはここまでの紹介です。次回のブログでAdobe AIR開発でつまづきがちなポイントを紹介したいと思います。