PEAKを生きる

科学の力で、能力を最大化するブログ

AndroidStuido&coco2d-x ver2.2.6でgradleビルドする方法

fabricを使おうと思ったら、gradleしか対応してなかったので、cocos2d-xをgradle化した。いろいろハマりめっちゃめんどくさかった。

また、この方法が最善かどうかはわからない。

おもにhttp://mattak.hatenablog.com/entry/2013/10/10/003914 を参考にさせてもらった。

ほぼ同じといえば、同じである。ライブラリファイルをincludeしているところが主な変更点。

step1 : cocos2dxのgradle化

まず、cocos2dxのコアの部分をgradle化する。これをあとからライブラリとして、インクルードすることになる。

まず、シンボリックリンクを作る

cd proj.android
ln -s /Develop/cocos2d-x/cocos2d-x-2.2.6/cocos2dx/platform/android/java/ libcocos

そして、libcocosのフォルダの中に、build.gradleというファイルを作り

buildscript {
     repositories {
          mavenCentral()
     }
     dependencies {
     classpath 'com.android.tools.build:gradle:1.1.0'
     }
}

apply plugin: 'com.android.library'

android {
     compileSdkVersion 22
     buildToolsVersion "22.0.1"

     defaultConfig {
          minSdkVersion 9
          targetSdkVersion 22
     }

sourceSets {
     main {
          manifest.srcFile 'AndroidManifest.xml'
          java.srcDirs = ['src']
          resources.srcDirs = ['src']
          aidl.srcDirs = ['src']
          renderscript.srcDirs = ['src']
          res.srcDirs = ['res']
          assets.srcDirs = ['assets']
    }
}
}

step2 libcocosをインクルードするための、settings.gradle

次に、proj.android直下にsettings.gradleをつくる

include ':libcocos'

先ほど作った、cocos2d-xのコアをincludeしている

step3 プロジェクト自体をgradle化する

proj.andorid直下にbuild.gradleを作り

buildscript {
     repositories {
          mavenCentral()
          maven { url 'https://maven.fabric.io/public' }
     }
     dependencies {
          classpath 'com.android.tools.build:gradle:1.1.0'
          classpath 'io.fabric.tools:gradle:1.18.0'
     }
}


apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories {
     mavenCentral()
     maven { url 'https://maven.fabric.io/public' }
}

dependencies {
     compile 'com.android.support:appcompat-v7:22.0.0'
     compile 'com.android.support:support-v4:22.0.0'
     compile "com.google.android.gms:play-services:7.0.0"
     compile fileTree(dir: 'libs', include: '*.jar')
     compile project(':libcocos')
     compile('com.crashlytics.sdk.android:crashlytics:2.2.3@aar') {
     transitive = true;
     }
}

android {
     compileSdkVersion 22
     buildToolsVersion "22.0.1"

     defaultConfig {
          minSdkVersion 9
          targetSdkVersion 22
     }


     sourceSets {
          main {
               manifest.srcFile 'AndroidManifest.xml'
               java.srcDirs = ['src']
               resources.srcDirs = ['src']
               aidl.srcDirs = ['src']
               renderscript.srcDirs = ['src']
               res.srcDirs = ['res']
               assets.srcDirs = ['assets']
               jniLibs.srcDirs = ['libs']
          }
     }
}

とする。

step 4 AndroidStuidoでimportする

ここまでいけば、AndoridStudioを開き、importする。と、graldeプロジェクトとして認識されるので、graldeのsyncが始まり、あとは実行すれば大丈夫。

build_native.shは上記のgradleでは対応してないので、ビルドが走る前に、external toolで動くようにしてあげる

fabricはfabricのチュートリアルに従っていけば大丈夫。

開発のプロが教える Cocos2d-x逆引きガイドブック

開発のプロが教える Cocos2d-x逆引きガイドブック

  • 作者: 清水友晶,松浦晃洋,加島拓,加藤直人,木村信行,小林伸隆,鶴田亮,西田寛輔,藤田泰生,八反田智和(HatchUp)
  • 出版社/メーカー: マイナビ
  • 発売日: 2015/02/26
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る