6.x アップグレードガイド:Unity

最終更新:

このアップグレードガイドは、 Chartboostの新しいUnity SDK(v6.0+)をお客様のゲームに使用するためのものです。

基本実装の手順を知りたい場合は、こちらをご覧ください。


要件

ChartboostはAndroid 2.3+とiOS 6.0+をサポートしているので、適宜Unityプロジェクトの最小OSバージョンを設定してください。


主な変更点

  1. SDKにより初期化が行われます
    • 統合処理の簡略化とポストローンチに関連する問題回避のため
  2. Chartboostメニューアイテム
    • AppID/AppSignatureペアの設定および制御が簡略化されました
  3. namespace Chartboostの名前をnamespace ChartboostSDKに変更しました
    • C#では名前空間とクラス名を同じにすることを推奨していません(クラスChartboostは公開API関数を提供しています)
  4. 場所はnull/()を受けつけなくなりました。代わりにCBLocation.Defaultを渡すことができます
    • デフォルトの場所は引き続き提供していますが、アナリティクスに活用するためにCBLocationクラスの名前を使って細かい場所設定をすることをお勧めします
  5. すべての場所がCBLocationクラスより渡されるようになりました
    • CBLocationクラスによく使われる場所のプリセット値を入れました。必要に応じてお使いください
    • カスタム場所文字列は、CBLocationクラスの locationFromName(string)メソッドから渡されるようになりました
  6. MoreApps呼び出しが場所public static void showMoreApps(CBLocation location)を使えるようになりました
    • ネイティブSDKに同梱されていたMoreAppsがより細かく制御できるようになりました
  7. Chartboost SDKのイベント名およびメソッド署名を更新し、大幅に改良しました
    • APIと機能のネイティブSDKとの親和性を高めました
    • 利用可能な旧/新イベント機能の詳細は、README.mdファイルまたはChartboostヘルプ(https://answers.chartboost.com/hc/ja/articles/200780379)をご覧ください
  8. CBBinding.csは、原則的にhartboost.csに置き換えられました。 CBBinding.isImpressionVisible()を呼び出していた場合は、今後はChartboost.isAnyViewVisible()を呼び出します。 -- 使用可能なすべてのメソッドはChartboost.csをご参照ください

6.x にアップグレードする

    1. 古いプラグインフォルダを削除します
      • \Plugins\Android // Android SDKファイル
      • \Plugins\iOS // iOS SDKファイル
      • \Plugins\Chartboost // サンプルプロジェクト
    2. 新しいSDKパッケージをインポートします
      • [Assets](アセット) > [Import Package](パッケージをインポート) > [Custom Package](カスタムパッケージ)
      • Chartboostからダウンロードした.unitypackageファイルを探し、それを使います
      • [Import](インポート)を選択してアクションを完了します(デフォルトではすべてのパッケージアセットがインポート対象になっています)
    3. /Assets/Chartboost/ChartboostからChartboostプレハブをドラッグし、お客様のゲームのシーンにドロップします
    4. メニューアイテム[Chartboost] > [Edit Settings](編集設定)を選びます
      • InspectorウィンドウのChartboostSettings内の[Setup Android SDK](Android SDKの設定)ボタンを押します
      • AppIDとAppSignature設定を各プラットフォームの現行の値を使って編集します
    5. using Chartboost; の行をすべて using ChartboostSDK; に置き換えます
    6. CBManager.CBImpressionError参照をすべてCBImpressionErrorに書き換えます
    7. OnEnable()内の次のchartboost init コードを削除します
    8. void OnEnable() {
      // Chartboostプラグインを初期化する
      #if UNITY_ANDROID
      // これらをChartboost Webポータルからの自分のAndroidアプリIDと署名で置き換える
       CBBinding.init("CB_APP_ID_ANDROID", "CB_APP_SIG_ANDROID");
      #elif UNITY_IPHONE
      // これらをChartboost Webポータルからの自分のiOSアプリIDと署名で置き換える
       CBBinding.init("CB_APP_ID_IOS", "CB_APP_SIG_IOS");
      #endif
      }
      
    9. 次のUnity関数内のAndroid用のChartboostライフサイクルコード(戻るボタンの扱い、一時停止、破棄など)を削除します
    10. #if UNITY_ANDROID
      public void Update() {
       if (Input.GetKeyUp(KeyCode.Escape)) {
       if (CBBinding.onBackPressed())
       return;
       else
       Application.Quit();
       }
      }
      
      void OnApplicationPause(bool paused) {
      // Chartboostプラグインのライフサイクルを管理する
       CBBinding.pause(paused);
      }
      
      void OnDisable() {
      // Chartboostプラグインをシャットダウンする
       CBBinding.destroy();
      }
      #endif
      
    11. CBBinding.showInterstitial(YOURLOCATIONHERE); からの古いChartboost呼び出しを Chartboost.showInterstitial(YOURLOCATIONHERE); に編集しなおします
      • CBBindingChartboostに名称変更されました
      • すべてのnull/()の空の場所には代わりにCBLocation.Defaultを使います
      • CBLocationには多くのプリセット値が入っているので(CBLocation.StartupCBLocation.LevelCompleteCBLocation.MainMenuなど)、それらを使うのもお勧めです
      • カスタム場所文字列をまだ使っている場合は、CBLocationから渡します。CBBinding.showInterstitial("customLocation");Chartboost.showInterstitial(CBLocation.locationFromName("customLocation"));になります
    12. キャッシュ済みの広告を明示的にチェックする際に使うメソッドの名称が変更されました
      • CBBinding.hasCachedInterstitial(YOURLOCATIONHERE)からの呼び出しをChartboost.hasInterstitial(YOURLOCATIONHERE)に編集しなおします
    13. Chartboostイベントをリッスンしている場合は、イベントはCBManagerではなくChartboostを使うようになったこと、また、名前の最後に"Event"が付かなくなったことにご留意ください
      • 例えば、CBManager.didDismissInterstitialEvent += didDismissInterstitialEvent;Chartboost.didDismissInterstitial += didDismissInterstitial; になります
    14. Chartboostイベントをリッスンしている場合。以下の2つが更新が必要な重要な名称変更です
      • didShowInterstitialEventdidDisplayInterstitial に置き換えてください
      • didShowMoreAppsEventdidDisplayMoreApps に置き換えてください
    15. Chartboostイベントをリッスンしている場合。MoreApps関連のメソッドがstring locationパラメータも取るようになりました。これは次に影響します
      • * didFailToLoadMoreApps()
      • didDismissMoreApps
      • didCloseMoreApps
      • didClickMoreApps
      • didCacheMoreApps
      • 例えば、void didFailToLoadMoreAppsEvent(CBManager.CBImpressionError error)void didFailToLoadMoreApps(string location, CBImpressionError error)に置き換えてください

ポストインストール・アナリティクス(PIA)

お客様のゲームにアプリ内購入機能がある場合には、ポストインストール・アナリティクス(PIA)の導入をお勧めします。収益、ARPU、継続率、レベルなどのデータを用いて、UA アドバタイジング・キャンペーンの最適化や、リターゲティングおよびプレイヤーのセグメント化に使うカスタム ユーザーグループの作成ができるようになります。