SDKのセットアップ(Android)

前提条件

SDKを導入するためには、以下の環境を推奨しています。

  • Android Studio 3.5 以上
  • Gradle 5.4.1 以上
  • Android Gradle Plugin 3.5.0

またプロジェクトは、以下の条件を満たす必要があります。

  • ビルドにcmakeを利用していること(ndk-buildは未サポートとなります。)
  • プロジェクトのminSdkVersionが 14 以上
    ※ 計測対象はAPI 21以降となります

導入手順

STEP1: Cocos2d-x SDKをダウンロードする

Githubリポジトリからzipファイルをダウンロードします。
ダウンロードしたファイルに含まれるKarteBridgesディレクトリをCocos2d-xのプロジェクトディレクトリ直下にコピーします。

STEP2: ビルド対象のファイルを指定する

KarteBridgesディレクトリ内の必要なブリッジクラスをビルド対象ファイルとして指定します。
また、includeするため、include対象ディレクトリにKarteBridges・KarteBridges/androidディレクトリをそれぞれ追加します。

CMakeLists.txtファイルの編集例は次のようになります。

# ...
if(ANDROID)
    # change APP_NAME to the share library name for Android, it's value depend on AndroidManifest.xml
    set(APP_NAME MyGame)
    list(APPEND GAME_SOURCE
         proj.android/app/jni/hellocpp/main.cpp
         # Android用のソースコード追加部分にKarteBridges内のcppファイルを追加します。
         KarteBridges/KarteUtilCpp.cpp
         KarteBridges/android/KarteAndroidUtils.cpp
         KarteBridges/android/KarteCocosCompat.cpp
         KarteBridges/android/KarteInAppMessagingCpp.cpp
         KarteBridges/android/KarteAppCpp.cpp
         KarteBridges/android/KarteTrackerCpp.cpp
         KarteBridges/android/KarteVariableCpp.cpp
         KarteBridges/android/KarteVariablesCpp.cpp
         KarteBridges/android/KarteUserSyncCpp.cpp
         )
# ...

target_include_directories(${APP_NAME}
        PRIVATE Classes
        # include対象ディレクトリにKarteBridges・KarteBridges/androidを追加します。
        PRIVATE KarteBridges
        PRIVATE KarteBridges/android
        PRIVATE ${COCOS2DX_ROOT_PATH}/cocos/audio/include/
)
# ...

STEP3: KARTE Cocos2d-x SDKを導入する

ダウンロードしたファイルに含まれるkarte-cocos2dx.aarをCocos2d-xのモジュールのdependenciesに追加します。

  1. karte-cocos2dx.aarをCocos2d-xのAndroidモジュール内にコピーします。
    • 例:<Cocos2d-xプロジェクトルート>/proj.android/app/libs/karte-cocos2dx.aar など
  2. モジュールのbuild.gradleのdependenciesに以下のように追加します。
    • aarファイルの配置場所に応じて変更してください。
dependencies {
    implementation files('libs/karte-cocos2dx.aar')
}

STEP4: 依存する KARTE Android SDK を導入する

1. リポジトリの追加

ルートプロジェクトの build.gradle を任意のエディタで開き、allprojects > repositories ブロックに mavenCentral リポジトリを追加します。

allprojects {
  repositories {
    // ...
    mavenCentral()
  }
}

2. 利用モジュールの指定

アプリの build.gradle を任意のエディタで開き、dependencies ブロックに利用するモジュールを追加します。

dependencies {
  // ...
  implementation 'io.karte.android:core:2.+'
  implementation 'io.karte.android:inappmessaging:2.+'
  implementation 'io.karte.android:notifications:2.+'
  implementation 'io.karte.android:variables:2.+'  
}

STEP5: SDKの初期化コードを追加する

ApplicationonCreate() メソッド内で SDK の初期化を行います。

import io.karte.android.KarteApp;

public class AppApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        KarteApp.setup(this, "アプリケーションキー");
    }
}

🚧

アプリケーションキーについて

初期化時に指定するアプリケーションキーは、KARTE管理画面に記載されているAPIキーとは異なります。
アプリケーションキーは営業担当よりお送りするメールに記載されておりますので、そちらをご確認ください。


What’s Next