SDK実装

アプリをストアに提出する前にやっておくべきことは?

Chartboost SDKを実装し、ビルドも完成。あとはApp Storeに提出するだけ!でもその前に、やっておきたいことがいくつかあります。

  1. ChartboostアプリIDと署名が正しいことを確認しましょう。デベロッパーによっては複数のアプリを開発していたり、同じアプリのバージョンをいくつも作っていることがあります。IDが正しくないと、再度提出しなくてはならなくなります。
  1. CharlesなどのWebデバッグ プロキシを使って、Chartboost SDKが起動するたびに初期化されることを確認しましょう。通常、ユーザーがアプリを起動/再開すると、毎回 api/install 呼び出しが行われます。
  1. 最後にもう一度QAを行い、ユーザーに与えたいUXになっているかを確認しましょう。たとえば、広告が適切な場所に表示されるかなどを見ておくといいでしょう。 確認ツールにはテストモードが使えます。
  1. Apple App Storeに提出する場合にはIDFAの使用について聞かれることがあります。Chartboost SDKがAppleのIDFAポリシーにどのように準拠しているかはこちらでご確認いただけます。
6月1日以降にAppleに提出されるすべてのアプリはIPv6に対応している必要があります。

Chartboost SDKはどのようなデータを収集するのですか?

SDKにより収集されるデータの詳細はこちらをご覧ください。


SDK実装アイコンの横にある2つのアイコンは何ですか?

お客様のゲームの [アプリの設定] ページには、3つのアイコンがあります。

アイコンの意味は次の通りです。(左から右)

  • SDK:点灯している場合は、SDKがアプリに正常に組み込まれています。ゲームから初期化の呼び出しを受信すると点灯します。(所要時間は、1時間以内です。)
  • フレーム:点灯している場合は、カスタムフレームが正常にアップロードされています。もっと見る
  • クリエイティブ:点灯している場合は、ゲーム宣伝用のクリエイティブが正常にアップロードされています。もっと見る

実行中のSDKのバージョンを調べるには?
以下のメソッドを呼び出せばお使いのSDKのバージョンがわかります。
NSLog(@”Using Chartboost version: %@”, [Chartboost getSDKVersion]);
public static String getSDKVersion() {
return CBConstants.SDK_VERSION;
}

 

または、次の方法でも調べられます。

  • SDKダウンロードファイルのreadmeにバージョン番号があります。
  • frameworkに埋め込まれたChartboost.hヘッダの冒頭部分を見ればわかります(iOSのみ)。
  • Charles Webプロキシを設定してSDKバージョンを判別する方法もあります。

 

最新のSDKをダウンロード

 


どのようなプラットフォームや開発ツールと互換性がありますか?

 

ネイティブChartboost SDK



 

ネイティブChartboost SDK用ラッパー


 

サードパーティ プラットフォーム用ラッパー




 

その他


関連項目

SDK実装前に確認しておくべきことはありますか?

Chartboostでの初期化の呼び出しは、ユーザー操作またはセッション開始前のネットワーク要求に依存してはなりません。また、アプリがアクティブになるたびに呼び出す必要があります。プラットフォーム固有の要件は、お客様がお使いのプラットフォームの統合に関するヘルプでご確認ください。


アプリのバンドルIDはどこで確認できますか?

iOSのバンドルIDはiTunes Connect[App Information](App情報) > [General Information](一般情報)にあります。

 

Google PlayのバンドルIDはアプリのGoogle PlayストアURLにあります。

 

ASIN(Amazon Standard Identification Numbers)はアプリののAmazonアプリストアページの [Product Details](商品の詳細)セクションにあります。

 


リリース前のアプリの場合はどうしたらいいでしょうか?

App Store、Google Playストア、Amazon Androidアプリストアにアプリの登録が済んでいない場合でも、Chartboost SDKとの統合やテストは可能です。 

その場合はダッシュボードにアプリを追加する際に手順3を飛ばします。ゲームの登録が済んだら、このページにマーケットURLやASINを追加するようにしてください。 


複数のアプリに同じアプリIDとアプリ署名を使うことはできますか?
複数のアプリに同じアプリIDとアプリ署名を使うのはやめましょう
お客様のアプリの1つがブロックされた場合、IDが同じ他のアプリもブロックされてしまい、パブリッシャーにとっては収益の減少につながる可能性があります。
同じIDを持つアプリのデータが混合し、アナリティクスデータが不正確になります。
複数プラットフォームで同じアプリIDを共有すると、データ破損につながることが多いです。
Chartboostダッシュボードでは、つど新規アプリを追加していくようにしましょう。

 


関連項目

Chartboost SDKで使用されるオープンソースソフトウェアは?

以下のオープンソースソフトウェアを使用しています。

iOS:

Android:




アプリをインポートしてもアイコンが表示されないのはなぜですが?

お使いのブラウザによるキャッシュやCookieの更新が行われていないのかもしれません。

ブラウザのキャッシュまたはClookieを削除してみてください。手順はお使いのブラウザをクリック:

Chrome
Firefox
Safari

うまくいかない場合には、お問い合わせください!


AIRの「名前付きトレイトが見つかりません(Unable to find named traits)」というエラーは何ですか?
Exception in thread "main" java.lang.Error: Unable to find named traits: com.chartboost.plugin.air::Chartboost

アプリをビルドしているときにこのようなエラーが発生した場合、そのほとんどがAIRネイティブ拡張が適正にパッケージ化されていないことに起因します。アプリケーション記述子XMLファイルにこのプラグインのextension IDが入っているかご確認ください。また、ビルドをエクスポートする際にはアプリケーション パッケージにChartboost ANEが含まれているかどうかもチェックしてみてください。


ビューではなくAndroidアクティビティを使って広告を表示させることはできますか?

確かにAndroid/Unityのネイティブデベロッパーの場合、ビューのかわりにAndroidアクティビティを使って広告を表示させるほうがいい場合があります。特定のゲームエンジンでビルドされたゲームではアクティビティを使ったほうがスムーズなケースもありますが、どちらのメソッドにもプラス面とマイナス面があるので両方使って比べてみるといいでしょう。


Adobe AIRアプリで横向きの広告がきちんと表示されないのはなぜですか?
ご迷惑をおかけしております。これはiOS 7.0用Adobe AIR 6.4.0 SDKで起こる問題です。Chartboostでは現在この問題を修正中です。もう少々お待ちください。

XCodeでリンクエラーが出るのはなぜですか?

お客様のプロジェクトに1個以上のフレームワークをリンクし忘れている可能性があります。iOS統合のヘルプで最新のSDKで必要なフレームワークを再度チェックして、プロジェクトのリンクが適正であることをご確認ください。

フレームワークが正しくリンクされているのになおリンクエラーが出る場合は、Xcodeプロジェクトの [ビルドの設定] で-ObjCリンクフラグが入っていないのかもしれません。その場合は、[他のリンクフラグ] フィールドにこのリンクフラグを入れてください。


エラー:”cannot initialize a parameter of type ‘id’ “/”parameter of incompatible type ‘id‘ “

この警告を避けるには、Chartboostメソッド [Chartboost startWithAppId:@"..." appSignature:@"..." delegate:self] を使用するときに、デリゲートとして渡すオブジェクトのクラスが ChartboostDelegate プロトコルに準拠していることを確認する必要があります。

AppDelegate.h ファイルでインターフェイスに適正なデリゲートの参照が含まれていることをご確認ください。

@interface AppDelegate : UIResponder <UIApplicationDelegate, ChartboostDelegate>

詳細は、Appleのドキュメント Conforming to Protocols(プロトコルに準拠する)セクションをご参照ください。


iPad 2 シミュレータでインタースティシャル広告が全画面表示されるのはなぜですか?

iPad 2 シミュレータでは、インタースティシャル広告が大きく表示されたり、拡大されたりすることがあります。これは、シミュレータが実際のデバイスモデルを渡していないことに起因しています。他のシミュレータや実際のデバイスでは、このような症状は起こりません。


パフォーマンスのトラッキングには、どのデバイス識別子を使いますか?

iOSゲームにはIFA(広告識別子)を、Google PlayゲームにはAndroid IDとGoogle Play Services広告 ID(advertising ID)を使います。もっと見る


アプリがアクティブになるたびにChartboostを初期化する必要があるのはどうしてですか?

アナリティクスのトラッキングを正確に行い、コンバージョンをきちんと把握するには、この方法がベストです。1回のネットワーク呼び出しが失敗する理由は、実にさまざまです。アプリがアクティブになるたびにChartboostを初期化することで、このようなエラーに備えています。


ChartboostはiOSのApp Transport Security(ATS)と互換性がありますか?

はい。Chartboost SDKおよびすべてのリンクはApp Transport Securityと互換性があります。お客様の会社のウェブサイトにリンクするクロスプロモーション・キャンペーンを実行する場合やアプリストア以外の外部サイトにリンクする広告がある場合には、必ずhttpsを使い、SSLサーバ証明書を取得するなどの方策を講じて、お客様のカスタムURLがATSに準拠するようにしてください。もっと見る ▶


TestFlightで統合テストはできますか?

できます。ただ、下記にご注意ください。

  • TestFlightでは、iOSの広告識別子(IDFA)がSDKによるデバイス識別子のリクエストごとに異なります。また、デバイスリストを使ったデバイスの除外/包含など、一部のChartboost機能が使えなかったり、使えても十分な結果が得られないことがあります。詳細
  • 上記の理由により、アナリティクスレポートにTestFlightのデバイスデータが含まれる場合、正確性に欠けるかもしれません。
  • 上記の点はテスト用ビルドのみの問題点で、App Storeからビルドをダウンロードする場合には心配ありません。

Game Center画面とChartboostとの競合を避けるには?

AppleのGame Center画面はChartboostアクティビティをオーバーライドすることがあるので、そのような場合は、rootViewを使って別の表示画面でインタースティシャル広告を表示できます。(SDKバージョン3.2+。)

例:読み込み画面とMenuViewタイプのメニュー画面の2つのView読み込みシーケンスがあるとします。この場合、ChartboostのrootViewをMenuViewのインスタンスに設定することができます。そうすると、showInterstitialが呼ばれるタイミングに関わらず、インタースティシャル広告はMenuView表示の際にのみ読み込まれるようになります。MenuViewが表示されるまで、インタースティシャル広告は表示されません。

設定は簡単です。[Chartboost sharedChartboost].rootView = gameMenu;とするだけです。gameMenuMenuViewの既に初期化されたインスタンスになっています。

現在rootViewに設定されている画面から切り替えたら、必ずrootViewを’nil’に設定してください。この手順を省略すると、インタースティシャル広告はゲーム内のどこにも表示されなくなります!

rootViewをnilに設定するには、[Chartboost sharedChartboost].rootView = nil;とするだけです。

注:

  • rootViewフレームはウィンドウと同じサイズにする必要があります
  • rootViewはView階層で最初に応答するレスポンダにする必要があります