Skip to content
This repository has been archived by the owner on Feb 14, 2022. It is now read-only.

組込み方法

t_kinami edited this page Aug 21, 2019 · 42 revisions

iOS への組み込み

nendSDK の組み込み

nendSDK iOS 設定ガイドに従い、以下を行います。

  1. NendModule/NendSDK/iOSにある NendAd.embeddedframework フォルダをXcodeのProject Navigator上にドラッグ&ドロップで追加
  2. 以下のフレームワークをプロジェクトに追加
  • AdSupport
  • ImageIO
  • Security
  • AVFoundation
  • CoreMedia
  • SystemConfiguration
  • WebKit
  1. オプションで以下のフレームワークを追加 (追加することで広告配信により詳細な情報を使用可能となります)
  • CoreLocation
  • CoreMotion
  • CoreTelephony

image

cocos2d-x モジュールの組み込み

NendModule/CommonフォルダおよびNendModule/iOSフォルダをプロジェクトに追加します。

2018-02-26 17 3816

Android への組み込み

nendSDK の組み込み

  1. build.gradleのrepositoriesにmavenリポジトリの情報を追加します。
// ~省略~
allprojects {
    repositories {
        jcenter()
        maven { url "https://maven.google.com" }
    }
}
  1. メニュータブのFile > New > New Module...から、Import .JAR/.AAR Packageを選択します。 image

  2. NendModule/NendSDK/Androidにあるaarファイルを選択します。Subproject name:に付けた名前がbuild.gradleファイルや settings.gradleファイル、また3.の手順に使用されるnendSDKの名前になります。 image

  3. メニュータブのFile > Project Structure(またはプロジェクトを右クリック > Open Module Settings)から、Dependencies > Modulesアプリのプロジェクト名を選択して+をクリックし、3 Module dependencyから2.でインポートしたnendSDKを選択します。

  4. build.gradle3.で追加したnendSDKcompile projectとして追加されていればaarファイルの組み込みは完了です。また、以下の各ライブラリも別途追加してください。

  1. 最終的に以下のようになっていればnendSDKの組み込みは完了です。
    build.gradle
android {
    compileSdkVersion 28
    ...
}

...

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation project(':libcocos2dx')
    implementation ('com.google.android.gms:play-services-ads-identifier:17.0.0') {
        exclude module: 'support-v4'
    }
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation project(path: ':nendSDK-5.2.0')
}

AndroidXを利用できない場合は nendSDK cocos2d-x module 2.4.0以下のバージョンをご利用いただき、以下のように設定します。

AndroidXを利用できない場合

build.gradle

android {
    compileSdkVersion 28
    ...
}

...

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile project(':libcocos2dx')
    implementation('com.google.android.gms:play-services-ads-identifier:16.0.0') {
        exclude module: 'support-v4'
    }
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation project(':nendSDK-5.1.0')
}

  1. アプリで位置情報を利用されている場合
    build.gradleのdependenciesに以下のライブラリの追加することで、広告配信に位置情報を使うことができます。
dependencies {
    // ~省略~
    implementation 'com.google.android.gms:play-services-location:17.0.0'
}
  1. Gradleビルドを実行

cocos2d-x モジュールの組み込み

プロジェクトにnet.nend.NendModuleパッケージを作成し、NendModule/javaPackageにあるjavaソースファイルを追加します。
※ これらを追加した際にエラーと警告が出る場合がありますが、ビルドは通りますので無視して頂いて問題ありません。
image

プロジェクトのClassesフォルダに、NendModule/CommonとNendModule/Androidにあるヘッダーファイルとc++ソースファイルを追加します。
2018-02-26 17 4006 2018-02-26 17 4047

ソースファイルとヘッダーファイルの追加

gradle.properties の PROP_BUILD_TYPEの設定により追加ファイルの記述方法が異なります。

cmake

プロジェクトのルートディレクトリ配下にある CMakeLists.txtを開き、以下の行を追加します。

...
if(ANDROID)
    ...
    # Add the source file to `GAME_SOURCE`.
    file(GLOB_RECURSE NEND_MODULE_SOURCE RELATIVE ${CMAKE_SOURCE_DIR} CONFIGURE_DEPENDS "Classes/Common/*.cpp" "Classes/Android/*.cpp")
    list(APPEND GAME_SOURCE ${NEND_MODULE_SOURCE})
    # Add the header file to` GAME_HEADER`.
    file(GLOB_RECURSE NEND_MODULE_HEADER RELATIVE ${CMAKE_SOURCE_DIR} CONFIGURE_DEPENDS "Classes/Common/*.h"  "Classes/Android/*.h")
    list(APPEND GAME_HEADER ${NEND_MODULE_HEADER})
    ...
endif()

...

target_include_directories(${APP_NAME}
        ...
        # Add the paths of NendModule's `Common` and` Android` directories.
        PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Classes/Common/
        PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Classes/Android/
)
...
ndk-build

jni/Android.mkのLOCAL_SRC_FILESに以下を追加します。

../../../Classes/Common/NendNativeLabel.cpp \
../../../Classes/Common/NendNativeSprite.cpp \
../../../Classes/Common/NendNativeClippingNode.cpp \
../../../Classes/Common/NendNativeAdClient.cpp \
../../../Classes/Common/NendHttpHelper.cpp \
../../../Classes/Common/NendNativeAdLog.cpp \
../../../Classes/Common/NendNativeAdRender.cpp \
../../../Classes/Common/NendNativeAdBinder.cpp \
../../../Classes/Common/NendNativeAd.cpp \
../../../Classes/Common/NendLogger.cpp \
../../../Classes/Common/NendNativeImpressionTracker.cpp \
../../../Classes/Common/NendVideoAd.cpp \
../../../Classes/Android/NendModule.cpp \
../../../Classes/Android/NendIconModule.cpp \
../../../Classes/Android/NendInterstitialModule.cpp \
../../../Classes/Android/AndroidNativeAd.cpp \
../../../Classes/Android/AndroidNativeJNI.cpp \
../../../Classes/Android/AndroidNativeAdClient.cpp \
../../../Classes/Android/NendFullBoardAd.cpp \
../../../Classes/Android/NendAdJniUtils.cpp \
../../../Classes/Android/NendInterstitialVideoAd.cpp \
../../../Classes/Android/NendRewardedVideoAd.cpp \
../../../Classes/Android/NendUserFeature.cpp \
../../../Classes/Android/AndroidNendLogger.cpp

jni/Android.mkのLOCAL_C_INCLUDESに以下を追加します。

LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../../Classes/Common
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../../Classes/Android

日本語

nendSDK Cocos2d-x module について

モジュールの組み込み

広告の表示

nendSDK Cocos2d-x moduleの内容

ログ出力

導入サポート


English

About nendSDK Cocos2d-x module

Integration

Display Ads

The Contents of nendSDK Cocos2d-x module

Logs Output

Supports

Clone this wiki locally