2-1. SDK導入 事前準備
① アドフリくんの管理画面にログインします。
② 「広告枠」タブの「広告枠」から、対象とする広告枠名のリンクをクリックします。
③ 表示された下記の赤枠部分が広告枠ID(App ID)です。これをコピーして使用します。
2-2. リワード・インタースティシャル・ネイティブ・ネイティブFLEX共通
必須ライブラリの導入を行います。
① google-play-services_libを導入
■ Android Studio
・「google-play-services_lib」を導入していない場合は、build.gradleに記述を追加してください。
アドフリくん単体では「play-services-ads」のみで構いません。
② アプリのプロジェクトに「libs」フォルダがない場合は、作成してください。
上記の「libs」フォルダに「adfurikunMovieRewardSDK-x.x.jar」をコピーしてください。
2-3. リワード広告
■ Android Studio
動画リワードSDKのサポートクラス群を追加します。
① サンプルに同梱している「Classes/adfurikun」フォルダを、アプリのプロジェクトの「 Classes」にコピーしてください。
② 同様に、「src/jp」フォルダをアプリのプロジェクトの「src」にコピーしてください。
③ ①で追加したクラスを「jni/Android.mk」に追加します。
④ Adcolony 3.2.1 をご使用になる場合は別途追記が必要になります。
詳細は4-2.Adcolonyを参照してください
2-4. リワード広告 ライフサイクル
追加した動画リワードSDKのサポートクラスは、Activityのライフサイクルに合わせる必要があります。
アプリで使用するActivityに、サポートクラスのライフサイクルメソッドを記述して下さい。
public class AppActivity extends Cocos2dxActivity{
AdfurikunRewardActivityBridge mAdfurikunRewardBridge;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// サポートクラス インスタンス作成
mAdfurikunRewardBridge = new
AdfurikunRewardActivityBridge(this);
}
@Override
protected void onStart() {
super.onStart();
// onStart内でRewardActivityBridge onStartメソッドを
// 呼び出してください
mAdfurikunRewardBridge.onStart();
}
@Override
protected void onResume() {
super.onResume();
// onResume内でRewardActivityBridge onResumeメソッドを
// 呼び出してください
mAdfurikunRewardBridge.onResume();
}
@Override
protected void onPause() {
// onPause内でRewardActivityBridge onPauseメソッドを
// 呼び出してください
mAdfurikunRewardBridge.onPause();
super.onPause();
}
@Override
protected void onStop() {
// onStop内でRewardActivityBridge onStopメソッドを
// 呼び出してください
mAdfurikunRewardBridge.onStop();
super.onStop();
}
@Override
protected void onDestroy() {
// onDestroy内でRewardActivityBridge onDestroyメソッドを
// 呼び出してください
mAdfurikunRewardBridge.onDestroy();
super.onDestroy();
}
}
上記の手順に加え、利用するアドネットワークごとのSDKを導入する必要があります。
各アドネットワークの導入方法は、「4. アドネットワーク Android 」を参照してください。
2-5. インタースティシャル広告
■ Android Studio
動画リワードSDKのサポートクラス群を追加します。
① サンプルに同梱している「Classes/adfurikun」フォルダを、アプリのプロジェクトの「 Classes」にコピーしてください。
② 同様に、「src/jp」フォルダをアプリのプロジェクトの「src」にコピーしてください。
③ ①で追加したクラスを「jni/Android.mk」に追加します。
④ Adcolony 3.2.1 をご使用になる場合は別途追記が必要になります。
詳細は4-2.Adcolonyを参照してください
2-6. インタースティシャル広告 ライフサイクル
追加した動画リワードSDKのサポートクラスは、Activityのライフサイクルに合わせる必要があります。
アプリで使用するActivityに、サポートクラスのライフサイクルメソッドを記述して下さい。
public class AppActivity extends Cocos2dxActivity{
AdfurikunInterstitialActivityBridge mAdfurikunInterstitialBridge;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// サポートクラス インスタンス作成
mAdfurikunInterstitialBridge = new
AdfurikunInterstitialActivityBridge(this);
}
@Override
protected void onStart() {
super.onStart();
// onStart内でInterstitialActivityBridge onStartメソッドを
// 呼び出してください
mAdfurikunInterstitialBridge.onStart();
}
@Override
protected void onResume() {
super.onResume();
// onResume内でInterstitialActivityBridge onResumeメソッドを
// 呼び出してください
mAdfurikunInterstitialBridge.onResume();
}
@Override
protected void onPause() {
// onPause内でInterstitialActivityBridge onPauseメソッドを
// 呼び出してください
mAdfurikunInterstitialBridge.onPause();
super.onPause();
}
@Override
protected void onStop() {
// onStop内でInterstitialActivityBridge onStopメソッドを
// 呼び出してください
mAdfurikunInterstitialBridge.onStop();
super.onStop();
}
@Override
protected void onDestroy() {
// onDestroy内でRewardActivityBridge onDestroyメソッドを
// 呼び出してください
mAdfurikunInterstitialBridge.onDestroy();
super.onDestroy();
}
}
上記の手順に加え、利用するアドネットワークごとのSDKを導入する必要があります。
各アドネットワークの導入方法は、「4. アドネットワーク Android 」を参照してください。
アプリ終了時、バックキーやホーム画面を押下時にインタースティシャル広告を表示するのは、 Googleの広告ポリシーに抵触する可能性がある為お控え下さい。
詳しくは、下記サイトでご確認ください。
アプリ、サードパーティー 広告、または端末の機能の妨害 (https://play.google.com/intl/ja/about/monetization-ads/ads/)
2-7. ネイティブ広告
・ネイティブ広告のサポート対象はAndroid OS 4.0 (API Level 14) 以上となります
・ネイティブ広告にはapplovin側の設定が追加で必要のため、下記のリンクから、必要な設定を行ってください
4-1. Applovin
■ Android Studio
動画リワードSDKのサポートクラス群を追加します。
① サンプルに同梱している「Classes/adfurikun」フォルダを、アプリのプロジェクトの「 Classes」にコピーしてください。
② 同様に、「src/jp」フォルダをアプリのプロジェクトの「src」にコピーしてください。
③ ①で追加したクラスを「jni/Android.mk」に追加します。
2-8. ネイティブ広告 ライフサイクル
追加した動画リワードSDKのサポートクラスは、Activityのライフサイクルに合わせる必要があります。
アプリで使用するActivityに、サポートクラスのライフサイクルメソッドを記述して下さい。
public class AppActivity extends Cocos2dxActivity{
AdfurikunNativeActivityBridge mAdfurikunNativeBridge;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// サポートクラス インスタンス作成
mAdfurikunNativeBridge = new
AdfurikunNativeActivityBridge(this);
}
@Override
protected void onResume() {
super.onResume();
// onResume内でNativectivityBridge onResumeメソッドを
// 呼び出してください
mAdfurikunNativeBridge.onResume();
}
@Override
protected void onPause() {
// onPause内でNativectivityBridge onPauseメソッドを
// 呼び出してください
mAdfurikunNativeBridge.onPause();
super.onPause();
}
@Override
protected void onDestroy() {
// onDestroy内でNativeActivityBridge onDestroyメソッドを
// 呼び出してください
mAdfurikunNativeBridge.onDestroy();
super.onDestroy();
}
}
上記の手順に加え、利用するアドネットワークごとのSDKを導入する必要があります。
各アドネットワークの導入方法は、「4. アドネットワーク Android 」を参照してください。
2-9. ネイティブFLEX広告
・ネイティブアドフレックス広告にはvungle側の設定が追加で必要のため、下記のリンクから、必要な設定を行ってください
4-4. Vungle
■ Android Studio
動画リワードSDKのサポートクラス群を追加します。
① サンプルに同梱している「Classes/adfurikun」フォルダを、アプリのプロジェクトの「 Classes」にコピーしてください。
② 同様に、「src/jp」フォルダをアプリのプロジェクトの「src」にコピーしてください。
③ ①で追加したクラスを「jni/Android.mk」に追加します。
2-10. ネイティブFLEX広告 ライフサイクル
追加した動画リワードSDKのサポートクラスは、Activityのライフサイクルに合わせる必要があります。
アプリで使用するActivityに、サポートクラスのライフサイクルメソッドを記述して下さい。
public class AppActivity extends Cocos2dxActivity{
AdfurikunNativeAdFlexActivityBridge mAdfurikunNativeAdFlexBridge;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// サポートクラス インスタンス作成
mAdfurikunNativeAdFlexBridge = new
AdfurikunNativeAdFlexActivityBridge(this);
}
@Override
protected void onStart() {
super.onStart();
// onStart内でNativeAdFlexActivityBridge onStartメソッドを
// 呼び出してください
mAdfurikunNativeAdFlexBridge.onStart();
}
@Override
protected void onResume() {
super.onResume();
// onResume内でNativeAdFlexActivityBridge onResumeメソッドを
// 呼び出してください
mAdfurikunNativeAdFlexBridge.onResume();
}
@Override
protected void onPause() {
// onPause内でNativeAdFlexActivityBridge onPauseメソッドを
// 呼び出してください
mAdfurikunNativeAdFlexBridge.onPause();
super.onPause();
}
@Override
protected void onStop() {
// onStop内でNativeAdFlexActivityBridge onStopメソッドを
// 呼び出してください
mAdfurikunNativeAdFlexBridge.onStop();
super.onStop();
}
@Override
protected void onDestroy() {
// onDestroy内でNativeAdFlexActivityBridge onDestroyメソッドを
// 呼び出してください
mAdfurikunNativeAdFlexBridge.onDestroy();
super.onDestroy();
}
}
上記の手順に加え、利用するアドネットワークごとのSDKを導入する必要があります。
各アドネットワークの導入方法は、「4. アドネットワーク Android 」を参照してください。
2-11. ProGuardの設定
① ProGuardを有効にする場合 、以下の内容をproguard-rules.proへ追記してください。
②各ADNWのProGuardの設定に関しては、各ADNWページを参照してください。
# <-- Cocos2dx -->
-keep class org.cocos2dx.lib.** { *; }
-keep class com.chukong.cocosplay.** { *; }
-keep class org.cocos2dx.cpp.AppActivity { *; }
-keep class jp.tjkapp.adfurikun.movieinterstitial.cocos2dx.** { *; }
-keep class jp.tjkapp.adfurikun.movienative.cocos2dx.** { *; }
-keep class jp.tjkapp.adfurikun.moviereward.cocos2dx.** { *; }
# <!-- 動画SDK ProGuard設定 ->
# MovieReward
-keep interface jp.tjkapp.adfurikunsdk.moviereward.**
-keep class jp.tjkapp.adfurikunsdk.moviereward.** {
public *;
}
-dontwarn jp.tjkapp.adfurikunsdk.moviereward.**
-keep class com.glossomads.** { *; }
-dontwarn android.webkit.**
## Support for Movie Reward Unity
-keep interface com.unity3d.player.**
-keep class com.unity3d.player.**
-dontwarn com.unity3d.player.**
-dontnote
2-12. AndroidManifest.xml設定
AndroidManifest.xmlにて、以下のように設定が必須となります。
■permission
*1.8.1より前のバージョンのマニュアルに記載してある"WRITE_EXTERNAL_STORAGE"は不要のため、必須パーミッションから削除しました
<!-- 広告取得の為にインターネットアクセス -->
<uses-permission android:name="android.permission.INTERNET"/>
<!-- ネットワーク接続判定 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
■Activity
*2.17.0以前と2.18.0以降でGlossomAdsFullScreenのパッケージ名が変更されております。
2.17.0以前
<activity android:name="com.glossomads.View.GlossomAdsFullScreen"
android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" />
2.18.0以降
<activity android:name="com.glossomads.sdk.GlossomAdsFullScreen"
android:configChanges="keyboardHidden|orientation|screenSize"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" />
<activity android:name="com.glossomads.sdk.GlossomBillboardAdActivity"
android:configChanges="keyboardHidden|orientation|screenSize|smallestScreenSize"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"/>
3.0.0以降
AAR内で定義されていますので、実行時にマージされて有効になります。
※重要 : バージョン2.5から必須
各アドネットワーク導入の際に必要なAndroidManifestの設定は各アドネットワークのページに記載しておりますので、そちらをご確認ください。
■google-play-serivces
Google Mobile Ads SDK(google-play-serivces.jar)向けに以下の要素を追加します。
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
versions.xmlのresources要素に含まれるinteger 値を、ご利用のGoogle Mobile Ads SDK (google-play-serivces_lib /res/values/versions.xml)と同一にします。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer name="google_play_services_version">7327000</integer>
</resources>
2-13. app/build.gradleの設定
*1.13.0以降、64Kを超えるメソッド数に達して、ビルドエラーが発生した場合は、app/build.gradleにて、以下のような設定の追加が必要となります。
■defaultConfig
multiDexEnabled true
を下記のように追加します。
defaultConfig {
// ~省略~
multiDexEnabled true
}
■dependencies
compile 'com.android.support:multidex:1.0.1'
を下記のように追加します。
dependencies {
// ~省略~
compile 'com.android.support:multidex:1.0.1'
}
2-14. Applicationクラスの設定
*1.13.0以降、64Kを超えるメソッド数に達して、アプリのminsdkversionが21未満の場合は、Applicationクラスに以下のような設定の追加が必要となります。
■MultiDexApplication
ApplicationクラスにMultiDexApplication
を継承して、MultiDex.install(this)
処理を下記のように追加します。
public class Application extends MultiDexApplication {
@Override
protected void attachBaseContext(Context base) {
MultiDex.install(this);
super.attachBaseContext(base);
}
// ~省略~
}