Android

 


 

はじめに:

  • まず、新規登録してChartboostのアカウントを作成してください。
  • ダッシュボードでアプリを追加してください。
  • また、最新のSDKをダウンロードしてください。
  • アクティブなパブリッシングキャンペーンを設定済みであることをご確認ください。
  • アマゾンとのインテグレーションでは、Androidと同じSDKを利用します。これはGoogle PlayおよびAmazonアプリストアで利用可能なゲームに有効です。
  • お持ちのゲームがUnityで構築されている場合は、Android用のUnityプラグインのご利用をお勧めします。独自のUnityアダプタでAndroidのSDKを使用する場合、このメソッドを用いて、広告がゲーム内に表示されることを確認してください。
  • Chartboost SDKの動作には、APIレベル9(Android OS 2.3)以降が必要です。
  • 必要な権限: android.permission.INTERNET
  • 必要な権限: android.permission.ACCESS_NETWORK_STATE
  • 推奨事項:Android 6.0デバイスとの互換性を確保するために、プロジェクトの「ビルド」と「SDKバージョンをAPIレベル23にコンパイル」を設定してください。これらの設定はbuild.gradleファイルから実行できます。
    buildToolsVersion = '23.0.0'
    compileSdkVersion = 23
  • 推奨事項:Android 6.0 MarshmallowでSDKを機能させる場合は、プロジェクトで「SDKバージョンをAPIレベル23にターゲット」を設定してください。設定はAndroidManfiest.xmlで実行できます。
    android:targetSdkVersion="23"
  • オプション(推奨)権限: android.permission.WRITE_EXTERNAL_STORAGEを使うと、SDKですべての広告アセット(クリエイティブ、カスタムフレームなど)を外部メモリにキャッシュすることができます。これにより広告のロードの高速化、およびSDKが利用するネットワークのトラフィック緩和が可能となるため、パフォーマンスの最大化が期待できます。
  • オプション(推奨)権限: android.permission.ACCESS_WIFI_STATEを使うと、SDK経由でHTTPリクエスト内のWiFi情報をチェックできます。これはユーザー識別子であるAndroid IDおよび/またはGAIDと併せて用いられます。詳細はデバイス識別子をご参照ください。
  • オプション(推奨)権限: android.permission.READ_PHONE_STATEを使うと、SDK経由で動画の再生を妨げるコールを処理することができます。

 


 

まず、chartboost.jarファイルをlibsディレクトリに追加します。

  • 既存の環境にlibsフォルダが存在しない場合は、フォルダを新規作成して.jarファイルを追加します。
  • オプション:IDEでJavadocsを利用する場合は、chartboost.jar.propertiesおよびdocディレクトリをlibsに追加してください。

 


 

Google Play Servicesライブラリを、プロジェクトの依存ライブラリに追加します。

  • Google Play Servicesライブラリには、Androidマニフェストの追加やProGuardの構成など独自のインテグレーションルールが設定されています。
  • 詳細は、Googleの設定手順をご覧ください。
ビルドには com.google.android.gms:play-services-ads:8.4.0のみをインポートしてください。すべてのGoogle Play機能をインポートする必要はありません。
8.4.0以上のバージョンであれば問題なく動作します。

 


 

以下のエントリをAndroidManifest.xmlファイルに追加します。

<activity android:name="com.chartboost.sdk.CBImpressionActivity" android:excludeFromRecents="true" android:hardwareAccelerated="true" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" android:configChanges="keyboardHidden|orientation|screenSize" />
たとえば、 CBImpressionActivityを使用しない複雑なインテグレーションを行う場合は、Chartboost広告を表示するすべてのアクティビティについて、 アクティビティエントリに必ず android:hardwareAccelerated="true"を組み込んでください(エントリはAndroidマニフェスト上にあります)。この値がないと、動画が正常に表示されません。

 


 

異なる向きに対応しているアクティビティでChartboost広告を表示させる場合は、以下の属性をAndroidManifest.xmlに追加します。

android:configChanges="keyboardHidden|orientation|screenSize"
こうすることで、向きが変わっても動画をスムーズに再生することができます。

 


 

Chartboostを利用するすべてのアクティビティに、Chartboost SDKをインポートします。

import com.chartboost.sdk.Chartboost; import com.chartboost.sdk.CBLocation; import com.chartboost.sdk.ChartboostDelegate;
  • SDKの追加機能をご利用の場合は、以下のアクティビティをインポートしてください。
import com.chartboost.sdk.Libraries.CBLogging.Level; import com.chartboost.sdk.Model.CBError.CBClickError; import com.chartboost.sdk.Model.CBError.CBImpressionError; import com.chartboost.sdk.Tracking.CBAnalytics; import com.chartboost.sdk.CBImpressionActivity;

 


 

ランチャーアクティビティクラスでChartboost SDKを初期化します。

  • 主要なアクティビティのonCreateライフサイクルメソッドを、以下のように拡張します。
public class <your Class name> extends Activity { @Override public void onCreate() { super.onCreate(); Chartboost.startWithAppId(this, appId, appSignature); Chartboost.onCreate(this); } }
  • また、このメソッドはSDKのChartboostActivityを拡張することでも簡単に実行できます。これにより、onCreateなどのアクティビティライフサイクルメソッドをオーバーライドする必要がなくなるため、Chartboost.OnCreate()をコールすれば設定が完了します。
ヒント:SDKの初期化が正常に行われなかった場合は、 Exception: Initialization errorエラーが表示されます。
ヒント:独自のUnityアダプタでAndroidのSDKを使用している場合は、 startWithAppIdの直後に Chartboost.setFramework(CBFramework.CBFrameworkUnity, unityVersion);メソッドを使用し、Unityをフレームワークとして申告する必要があります。また、 unityVersionを、 Unity関数の戻り値で置換してください
startWithAppIdは、常にハードとソフトの起動中、 特にアプリが起動してから最初の数秒以内に行ってください。これらは、アプリ内のその他アクションやユーザーの行動に関係なくコールされる必要があります。

 


 

アプリIDとアプリ署名を追加します。

 


 

アクティビティのライフサイクルメソッドをオーバーライドします。

  • 以下のコードを追加して、アクティビティのonStart()onPause()onResume()onStop()onDestroy()、およびonBackPressed()メソッドを拡張してください。
@Override public void onStart() { super.onStart(); Chartboost.onStart(this); } @Override public void onResume() { super.onResume(); Chartboost.onResume(this); } @Override public void onPause() { super.onPause(); Chartboost.onPause(this); } @Override public void onStop() { super.onStop(); Chartboost.onStop(this); } @Override public void onDestroy() { super.onDestroy(); Chartboost.onDestroy(this); } @Override public void onBackPressed() { // If an interstitial is on screen, close it. if (Chartboost.onBackPressed()) return; else super.onBackPressed(); }

 


 

静止画または動画インタースティシャル広告の表示:

Chartboost.cacheInterstitial(CBLocation.LOCATION_DEFAULT); Chartboost.showInterstitial(CBLocation.LOCATION_DEFAULT);
同じロケーションに対して、 showInterstitialcacheInterstitialの後にダイレクトに呼び出すことは避けてください。このコールを行うと、SDKの動作がストップします。
インタースティシャル広告は、表示前にキャッシュを行うことを 強くお勧めしますキャッシュについての詳細はこちら▶
プリフェッチ動画の容量は、メディエーションをご利用の場合も合計で最大30-50MB程度となります。

 

リワード動画広告の表示:

Chartboost.cacheRewardedVideo(CBLocation.LOCATION_GAMEOVER); Chartboost.showRewardedVideo(CBLocation.LOCATION_GAMEOVER);
同じロケーションに対して、 showInterstitialcacheInterstitialの後にダイレクトに呼び出すことは避けてください。このコールを行うと、SDKの動作がストップします。
インタースティシャル広告は、表示前にキャッシュを行うことを 強くお勧めしますキャッシュについての詳細はこちら▶
プリフェッチ動画の容量は、メディエーションをご利用の場合も合計で最大30-50MB程度となります。

 

ProGuardをご利用の場合は、以下のコードをproguard-rules.proに追加してください。

-keep class com.chartboost.** { *; }
ヒント:ProGuardの設定詳細については、 Google Playのサービス仕様書をご参照ください。

 


 

インテグレーションの状況をテストします。

  • Androidデバイス上でプロジェクトを実行します。
  • アクティブなパブリッシングキャンペーンを設定済で、「インタースティシャルを表示」または「リワード動画を表示」コールをインテグレートしている場合は、広告が正常に表示されます。
  • パブリッシングキャンペーンが存在しないが、上記コールのインテグレートが完了している場合は、テストモードを利用してテスト広告の表示確認を行ってください。
  • 広告が表示されない場合はこちら

 


 

ChartboostダッシュボードでSDKアイコンを確認します。

  • ダッシュボードから、アプリの[アプリ設定] > [基本設定]開きます
  • ChartboostのサーバーがアプリID経由でSDK起動コールの受信に成功した場合は、アプリアイコンの下にあるSDKアイコンがグレーから緑色に表示されます。

 


 

お疲れ様でした!Chartboost SDKをアプリにインテグレートしたら、これで準備完了です!

早速、キャンペーンを開始できます▶

 


 

Chartboost SDKの機能詳細はこちら

  • キャッシュ:広告をデバイスのローカルに保存することで、ロード時間を短縮します。
  • Chartboost動画:ゲームと一体化した高品質の動画広告で、プレーヤーの集中力を妨げないより自然なアプローチを実行できます。
  • 名前付きロケーション:ダッシュボードからキャンペーンのターゲティングと広告の表示頻度を微調整します。
  • デリゲートメソッド:ゲームと広告をより連動させ、パフォーマンス向上を狙います。
  • SDK構成メソッド:Chartboost SDKの各機能と設定方法をご紹介しています。
  • メディエーション:効果の高い別ネットワークに広告を拡散させ、収益向上を図ります。

 


 

OpenGLおよび旧バージョンのChartboost SDKを利用するには

<activity android:name="com.chartboost.sdk.CBImpressionActivity" android:excludeFromRecents="true" android:hardwareAccelerated="true" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" android:configChanges="keyboardHidden|orientation|screenSize" />
  • Chartboost SDK v3.4.0以下の場合: cb.setImpressionsUseActivities(true);
  • Chartboost SDK v4.xの場合: CBPreferences.getInstance().setImpressionsUseActivities(true);
  • Chartboost SDK v5.xの場合: Chartboost.setImpressionsUseActivities(boolean impressionsUseActivities)このメソッドを、アクティビティのonCreate()メソッド内でコールします。コールは必ず、SDKをstartWithAppId初期化した後行ってください。以下をコールする前は行わないようにしてください。Chartboost.onCreate()

 


 

関連ページ
  • エラーコード:Android用SDKのインテグレートに関する一般的な問題とその解決策をご紹介しています。

 

▲トップに戻る