今回はiOSで作成したテンプレートをAndroidでも動かしてみようと思います。
Androidのエミュレータは動かないので、試すには実機が必須です。
今回のバージョン
・cocos2d-2.1beta3-x-2.1.0
・Eclipse3.7
【環境準備】
Eclipseのインストールはググレカス
AndroidSDKをAndroid SDK | Android Developersからダウンロードして解凍します。
解凍したやつは僕の場合は下記に保存してみました。
/Users/hirophilip/Developer/android-sdks
次にcocos2d-xはc++で開発するので、AndroidNDKを
Android NDK | Android Developersからダウンロードして解凍します。
解凍したやつは僕の場合は下記に保存してみました。
/Users/hirophilip/Developer/android-ndk-r8b
■create-android-project.shの編集
次にcocos2d-xのフォルダにある、
(僕の場合は/Users/hirophilip/Documents/Project/iOS/cocos2d/cocos2d-2.1beta3-x-2.1.0/)
「create-android-project.sh」のNDK_ROOT_LOCALとANDROID_SDK_ROOT_LOCALの
パスを変更します。
# set environment paramters
NDK_ROOT_LOCAL="/Users/hirophilip/Developer/android-ndk-r8b"
ANDROID_SDK_ROOT_LOCAL="/Users/hirophilip/Developer/android-sdks"
NEED_BOX2D=true
Box2dを使うので、NEED_BOX2Dを「true」にしています。
■build_native.shの編集
次にtemplateフォルダにある、
(/Users/hirophilip/Documents/Project/iOS/cocos2d/cocos2d-2.1beta3-x-2.1.0/template/android/)
「build_native.sh」ファイルを編集します。
一番先頭部分に下記を追加してください。
APPNAME="__projectname__"
NDK_ROOT=__ndkroot__
COCOS2DX_ROOT=__cocos2dxroot__
GAME_ROOT=$COCOS2DX_ROOT/__projectname__
GAME_ANDROID_ROOT=$GAME_ROOT/proj.android
RESOURCE_ROOT=$GAME_ROOT/Resources
# options
■copy_files.shの編集
次に同じくtemplateフォルダにある、
(/Users/hirophilip/Documents/Project/iOS/cocos2d/cocos2d-2.1beta3-x-2.1.0/template/android/)
「copy_files.sh」を編集します。
一番下の行に下記を挿入します。
copy_library_src(){
cp -rf $COCOSJAVALIB_ROOT/src/* $APP_DIR/proj.android/src/
}
copy_cpp_h
copy_resouces
copy_src_and_jni
copy_library_src
copy_build_native
copy_ndkgdb
modify_project_classpath
modify_androidmanifest
modify_applicationdemo
modify_layout
copy_icon
【Android用プロジェクト作成】
create-android-project.shをターミナルから実行します。
# ./create-android-project.sh
最初にパッケージ名を入力します。
jp.co.fuate.gaomartest
次に対象とするAndroidのバージョンをIDで指定します。
Android2.2以上を要求しますので、「5」を入力してください。
id: 5 or "android-8"
Name: Android 2.2
Type: Platform
API level: 8
Revision: 3
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854
ABIs : armeabi
次にプロジェクト名を入力してください。
GaomarTest
スクリプトが実行して、フォルダが作成されていると思います。

ここでターミナルから作成したフォルダに移動して、
ビルドを行います。
「build_native.sh」を実行しましょう。
# cd ./GaomarTest/proj.android
# ./build_native.sh
最初はビルドに時間がかかります。
AppStoreの審査で待つのは慣れてるでしょうけど、温かい目でビルドが終わるのを待ちましょう。
ここでビルドが失敗した人はパスがミスってませんか?
通るまで必死に調べましょう〜
以降、Androidで動かす場合は必ずこの「build_native.sh」が必要になります。
次にEclipseにプロジェクトをインポートします。

既存プロジェクトをワークスペースへ

作ったフォルダを選択して完了をクリック!
※プロジェクトをワークスペースにコピーのチェックは外してください。

これで実行すればアプリが起動すると思います。

この画面が実機で出ればOK!
おめでとうございます!
ここでBox2dで動かすって言ってたやんけ!って突っ込まないでください(´Д⊂ヽ
続きはcocos2d-x環境構築〜Androidテンプレート起動までその2で!!
スポンサーサイト