SupaShin備忘録

無知なPGが日々努力しようとしてみたり、しなかったりするメモ系ブログです

cocos2d-x Android 開発環境構築

SupaShin備忘録XcodeiOS版を開発する環境が整ったので、今回はAndroid版の環境構築を行おうと思います。
Android SDK(ADT Bundle)のダウンロード
http://developer.android.com/sdk/index.html
上記URLから「Android SDK」の最新版をダウンロード

「Download the SDK -ADT Bundle for Mac-」を押下

「I have read and agree with the above terms and conditions」にチェックを入れ「SDK」をダウンロードします。

ここでは「adt-bundle-mac-x86_64-20130219」をダウンロードしました。
Android NDK をダウンロードする
http://developer.android.com/tools/sdk/ndk/index.html
開発するプラットフォームの「NDK」をダウンロードします。
今回は「Mac OS X 64bit版」を選択します。

「I have read and agree with the above terms and conditions」にチェックを入れ、「NDK」をダウンロードします。
ここでは「android-ndk-r8e.tar.bz2」をダウンロードしました。

ダウンロードした「SDK」「NDK」ファイルは「ダウンロード」ディレクトリに入っています

Android SDK(ADT Bundle) + NDKのインストール
「NDK」は解凍しておきます。
解凍は好きに行ってください。
コマンドの場合のサンプルは下記です。

$ tar -zxvf 「ファイル名」

ダウンロードの中にある「SDK」と「NDK」を、それぞれ適当なディレクトリへとリーネームしてコピーしておきます。
ここでは「アプリケーション」ディレクトリへとコピーするとします
SDK」は「android-sdk
「NDK」は「android-ndk」
にリネームするとします。
コマンドで移動する場合のサンプルは下記です。

$ cp -r /Users/ユーザー名/Downloads/android-ndk-r8e /Applications/android-ndk
$ cp -r /Users/ユーザー名/Downloads/adt-bundle-mac-x86_64-20130219 /Applications/android-sdk

前回でインストールした「cocos2d-x」ディレクトリの中にある、create-android-project.shを編集します。
今回はXcodeで開きました。
そして、NDK_ROOTとSDK_ROOTのパスを変更して保存します。
記事通りにインストールしていれば「Path」は下記となっているはずです。

「cocos2d-x」ディレクトリへのパス
/Users/ユーザー名/COCOS2DX/cocos2d-2.1rc0-x-2.1.3

「Finder」で移動する場合は下記を参考にしてください。
・「移動」メニューの「フォルダへ移動」を選択
・「Shift」+「Command」+「G」のキーボードショートカット

「NDK_ROOT_LOCAL」と「ANDROID_SDK_ROOT_LOCAL」を修正します。
・NDK_ROOT_LOCAL=>/Applications/android-ndk
ANDROID_SDK_ROOT_LOCAL=>/Applications/android-sdk

ターミナルを起動し、「cocos2d-x」ディレクトリへと移動し「create-android-project.sh」を実行します。

※サンプルコマンド
$ cd /Users/ユーザー名/COCOS2DX/cocos2d-2.1rc0-x-2.1.3 $ sudo ./create-android-project.sh

3回質問がくるので入力する
Input package path. For example: org.cocos2dx.example(パッケージパスを入力)
例)com.test.Myproject

input target id:(どのAPIバージョンで作るか→参考の番号が表示されるので選択する)
例)20
※選択するバージョンが古いとOPENGLの部分でエラーが出るのでAPI15ぐらいで作成してみると回避できる

input your project name:(プロジェクト名称を入力)
例)Myproject

上記の質問に答えると「cocos2d-xディレクトリ」に「Android用プロジェクト」が生成されています。
今回の場合だと「Myproject」が生成されているはずです。

「Myproject」内の「proj.android」ディレクトリを、先ほど作ったiOS用のプロジェクト「cocos2d-x」に、下記のように移動させます。
記事通りに作成している場合iOS用プロジェクトはデスクトップの「cocos2d-x」となっているはずですので、
今回は「/Users/ユーザー名/Desktop/cocos2d-x/cocos2d-x」が移動先となります。

「cocos2d-x」ディレクトリの「cocos2dx/platform/android/java/src/org/cocos2dx/lib」ディレクトリをコピーし、
iOS用プロジェクトに「cocos2d-x/cocos2d-x/proj.android/src/org/cocos2dx/lib」となるようにペーストします。
今回の例でいうと
/Users/ユーザー名/COCOS2DX/cocos2d-2.1rc0-x-2.1.3/cocos2dx/platform/android/java/src/org/cocos2dx/lib

/Users/ユーザー名/Desktop/cocos2d-x/cocos2d-x/proj.android/src/org/cocos2dx/lib
となるようにペーストします。

「proj.android」内の「AndroidManifest.xml」を開き、「minSdkVersion = 10」に変更して保存します。
今回ファイルは「Xcode」で開いています。

次にproj.android内のbuild_native.shを開き、以下の場所にコードを追加&変更します。
「NDK_ROOT」と「COCOS2DX_ROOT」のパスを指定してあげるだけです。
ここでは
「NDK_ROOT」は「/Applications/android-ndk」
「COCOS2DX_ROOT」は「/Users/ユーザー名/COCOS2DX/cocos2d-2.1rc0-x-2.1.3」
とします。