よくある質問

1. 一般的な質問

TapjoySDK証明書がXcodeで期限切れ、または取り消されている(certificate has expired/revoked)と表示されるのはどうしてですか

Tapjoy SDK 13.3.0以降、フレームワークはTapjoy Inc.のApple証明書を使用して署名され、フレームワークが本物であることを確認します。しかし、証明書は期限が切れることがあり、場合によっては取り消されることもあります。その場合、最新のSDKに更新してください。

証明書の詳細:

  • チーム名: Tapjoy, Inc.
  • チームID: VLCPHQMND2
  • 種類: Apple Developer Program

Tapjoyは、フレームワークの寿命を延ばすために再署名することもあります。この場合、キャッシュをクリアし、再度統合を試みる必要があります。以下のコマンドを使用してください。

Cocoapodsを使用している場合

pod cache clean TapjoySDK --all

Swift Package Managerを使用している場合

rm -rf ~/Library/Caches/org.swift.swiftpm ~/Library/org.swift.swiftpm

手動で実装している場合

  1. .xcframeworkを削除します。
  2. 再度ダウンロードします。

SDKはどこでダウンロード可能ですか

SDKダウンロードページでダウンロードしてください。

Tapjoy SDKを実装するとアプリサイズはどれくらい増えますか?

Android は 12.9.0 SDK で約692KB (jar ライブラリのサイズ) および 約4688 メソッドです。 iOSの場合、SDK 12.9.0 は arm64 アーキテクチャで 906,290 バイト分アプリサイズが増加します。注: このサイズはXcodeでTapjoy利用に必要なフレームすべてを含んだものです。多くのアプリはすでにそれらのフレームを使っているため、実際には多くの場合増加分はより少なくなります。

対応可能なプラットフォームは?

Tapjoy 12はiOS 9.0以上と Android 4.0(API Level 14/ Ice Cream Sandwich) 以上をサポートします。

サポートする開発環境は?

TapjoyはネイティブiOSAndroid、そして Unity3d のPluginをサポートします。他にもCocos2d-x向け C++ library をサポートします。

Tapjoy SDKに含まれるオープンソースを教えてください。

オープンソースリスト ("Open Source Software") をご参照ください。

Tapjoy SDK を組み込みましたが、広告が表示されません

広告が表示されない原因はいくつか考えられます。以下の原因となりそうな項目を確認してみてください:

  1. 最もよく見られる原因は、プレイスメントにコンテンツが何も配置されていない場合です。 ダッシュボードでプレイスメントの作成を行い、呼び出し用のコードを正しく書いた場合でも、コンテンツをプレイスメントに配置するまで何も表示されません。
  2. プレイスメントの呼び出しコードを書いては要るが、ダッシュボードでプレイスメントを作成していない
  3. ログラム中のプレイスメントの呼び出しコードに**対応するプレイスメントがダッシュボードに設定されていない。**たとえば、コード上で "app open" というプレイスメントを呼び出していても、ダッシュボード上では "app-open" という名前でプレイスメントを作成していた場合には、"app open" というプレイスメント呼び出しの結果は常に広告がない状態になります。空白文字の位置や、アンダースコア("_")・ハイフン("-")等の記号の差異、綴りや意味の似通った単語の違い(たとえば、"exit_store" と "quit_store")等に特に注意してください。
  4. アプリの仮想通貨が未承認。 Tapjoy で広告を表示するには、ダッシュボードで少なくとも一つの [仮想通貨を設定する必要があります。|Virtual-Currency-Overview] 仮想通貨を確認するには、画面左下の [アプリ設定] から [アイテム] を開き、[仮想通貨]タブをクリックします。仮想通貨の設定後は、Tapjoy が仮想通貨を有効にする必要があります。仮想通貨を有効にするには通常 1-2 営業日程の時間が必要です。また、アプリをiOS と Android の双方にリリースする場合に広告を表示するには、双方のプラットフォームで仮想通貨が有効になっている必要があります
  5. Tapjoy connect が正常終了する前にプレイスメントを呼び出している。 Tapjoy connect の呼び出しが正常に終了するまで、プレイスメントの呼び出しを待つ必要があります。それ以前の呼び出しは失敗し、広告が表示されません。(プレイスメントに限らず、 Tapjoy connectが正常に終了するまではほぼすべての Tapjoy 機能の呼び出しは失敗します)。connect を呼び出すコードの直後にプレイスメントの呼び出しコードを書いても、connect が正常終了した後にプレイスメントが作成されるとは限りません。connect コールは非同期呼び出しのため、Tapjoy connect 成功の デリゲート/リスナ (iOSAndroidUnityAir)が呼ばれるのを待つ必要があります。
  6. 正しくない SDK Key を指定している。 ダッシュボード に表示される SDK Key とアプリのコードで指定している SDK Key が一致しているかを確認してください。Tapjoy 関連のコードを別のプロジェクトからコピー & ペーストした場合に、異なるアプリやプラットフォーム用の SDK Key が入ってしまうこともありえます。
  7. その地域向けの広告種別に、広告在庫がない。 特定の地域向けの特定の広告種別において、Tapjoy の広告在庫がなくなる事もあります。小さな市場の場合にはこうした事が起こりやすくなります。広告が表示されない原因が、広告在庫切れなのか実装上の問題かを判別するには、確認用の端末をテストデバイスに指定してみてください。テストデバイスに指定した端末では、広告在庫がない場合でも Tapjoy のテスト広告が表示されるはずです。(注: テスト広告では広告の種類によっては、報酬の付与が五分に一回程度に制限される場合があります。これは、不正使用を避けるためです) 端末をテストデバイスに指定するには、[アプリ設定]から[テストデバイス]-[新規テストデバイス]を選択してください。
  8. VPNを利用している. VPNを利用している場合、Tapjoyはデバイスが存在する地域を異なる場所からアクセスしようとしていると考え、フラウド防止の観点から広告を出さない場合があります。これは、VPNのIPアドレスが端末の示す国コード等の地域情報と異なる場合には特に発生しやすくなります。
  9. 広告用コンテンツがテストデバイス専用に指定してあり、 通常デバイスで確認をしている。コンテンツを全デバイス向けに設定([マネタイズ] -> コンテンツリストまでスクロール -> 対象のコンテンツを見つける -> [設定/確認]欄から[編集]を選択 -> [テストデバイスのみ] チェックボックスを解除)するか、テストデバイスに設定して([アプリ設定]-[テストデバイス]-[新規テストデバイス])確認してください。
  10. "リワード無し"に設定したコンテンツでテスト広告を見ようとしている。 広告コンテンツ(表示広告、オートプレイ ビデオ) が"リワード無し" に設定されていた場合は、テストデバイスであってもテスト広告は表示されません。
  11. 仮想通貨の換算率 ([アプリ設定] -> [アイテム] ->[仮想通貨]) が 低すぎる場合、仮想通貨の一単位以上の支払いをする広告があまりない場合があります。たとえば、仮想通貨 ダイヤ の換算率を1とした場合は 1 ダイヤ = $1 の換算になるため、1ドル以上の還元をする広告しか表示されません。ほとんどの広告はそれほどの金額を還元しないため、広告が表示されない可能性が高くなります。こうした場合でもできるだけ広告が表示されるようにシステム上で調整は行いますが、換算率を 100 以上にする事をオススメしています。換算率を100以上に設定すれば、仮想通貨が高すぎるために広告在庫が切れてしまう事態を防げます。
  12. コンテンツを一度表示した後に続けて show を呼んだ場合は、コンテンツは表示されません。プレイスメントをユーザに表示した場合、プレイスメントの内容を再読み込みするために、再度プレイスメントを作成する必要があります。この手続きを行わない場合、以降の表示呼び出しは失敗します。
  13. インターネットに接続していない。広告をユーザに表示させるためには、インターネット接続が必要です。テストをするデバイスやシミュレータが接続できない場合、広告は表示されません。
  14. Unity3d の Editor で動作させている。 Unity 3D で Tapjoy SDK をお使いの場合、Tapjoy を動作させるためには デバイス用にアプリをビルドして動かす必要があります。Tapjoy SDK は Unity3d の Editor での動作をサポートしていません。
  15. デバイスの時刻が現在時刻ではない。 SSL通信のハンドシェイクが失敗する原因になり、Tapjoyのconnectコールが成功しなくなり、結果としてTapjoyコンテンツが表示されなくなります。
  16. 同じパブリッシャーUser IDを多数のデバイスで使用している. テストを行う際など、一人のエンジニアが同じアプリを複数のデバイスで動かす時もあります。Tapjoy のシステムが同じパブリッシャーUser IDが多くの端末で使用されている場合、"クリックファーム"と呼ばれる広告を不正に表示する仕組みを作ろうとしていると考え、広告コンテンツを当該User IDに表示しなくなる場合があります。セキュリティ上の理由から、こうした判断が行われる具体的な閾値は公表しておりません。回避方法としては、各デバイスで異なるUser IDを使いようにして下さい。
  17. eCPMフロアやゴールの設定により、Tapjoyが現時点で設定したフロアやゴールに見合うコンテンツの在庫がない。フロア設定が高い場合や、Tapjoy のシステムがユーザーがインストール等を行いにくいと判断した場合(テストアカウントとテストデバイスでよく発生します)、当該ユーザーのビッディングが低くなり発生しやすくなります。

実装し、すでに送信したカスタムコホート情報が管理画面に表示されるにはどれくらいの時間が掛かりますか?

カスタムコホートデータ処理は毎日1回のとなります。よって、送信したデータが管理画面に表示されるまで最大24時間かかる場合があります

広告IDをアップロードしてカスタムのユーザーセグメントを作成できますか?

可能です。. 広告IDアップロードの手順 にしたがって下さい。

Tapjoyサーバはどこに設置されていますか?

Tapjoyはグローバル向けのサービスを提供しており、サーバもグローバル対応をしています。 Tapjoyサーバはアジアー太平洋地域、西ヨーロッパ、西アメリカ、及び東アメリカに設定されています。これらのサーバは複数の地域で非常に高いパフォーマンスを発揮しています。

オファーウォールからアプリをインストールしましたが、リワードがもらえません。何が起こっているのですか?

インストールが確認されるには、広告対象のアプリを開き、実行する必要があります。アプリが実行されればインストールが追跡され、Tapjoyサーバーにインストールの追跡データが送られてくればリワードが発生します。通常の場合、インストールは数分以内に追跡されます。しかしながら、遅いケースではインストールの追跡サービスがTapjoyサーバにリポートするまで一時間近くかかる場合もあります。

TapjoyのデバッグモードをONにするには?

Tapjoyの デバッグ/ログモードをONにする手順は、iOS, Android、およびUnity をそれぞれ参照して下さい。

広告を表示する前に、コンテンツのプリロードが終わるのを待つ必要がありますか?

isContentAvailableレスポンスが得られていれば、コンテンツの表示にプリロードが終わるのを待つ必要はありません。showContentをプリロードが終わる前(onContentReadyコールバック)に呼び出した場合、SDKは残りの広告コンテンツをストリーミング表示しようとします。コンテンツのダウンロードが完了した事を示すonContentReadyコールバックを待つ事をおすすめします。そうでない場合、ユーザーに広告をダウンロードするバッファリング画面が表示される場合があります。

動画再生中にどの程度のメモリを使用しますか?

平均的には、iOSの動画は約7mbほどのメモリを使用します。Androidでは10mbほどのメモリを動画再生で使用します。

Androidのパーミッションの ACCESS_FINE_LOCATION または ACCESS_COARSE_LOCATION をサポートしていますか?*

現在のAndroid SDKではこれらのパーミッションを使用しません。

アプリ内課金のデータがApp Storeのリポートと違うのはなぜですか?

いくつかの理由が考えられます: 1. レシートによるバリデーションが行われていない。 2. IAPトラッキングでは、払い戻し処理が含まれていません。ユーザーが払い戻しを求めた場合、その値は追跡されず、収入の値にも反映されません。 3. 国別情報に違いがある場合は、地域判別の違いの可能性があります。TapjoyではIPアドレスやSIMカード情報からユーザーの国情報を判断していますが、各ストアではアカウントに紐付けされた国情報を使用しています。

Androidでケース1が発生した場合、ダッシュボードの "設定" - "アプリ設定" - "アナリティクス" -"Receipt Validation" で設定可能です。

サポートが必要な場合はどうすれば良いですか?

アカウントマネージャー二お問い合わせいただくか、[実装サポート] にご連絡ください (mailto:integrations@tapjoy.com)。

2. Unity

Unity3d EditorでTapjoy実装をテストできますか?

できません。Tapjoy機能をテストするにはアプリをビルドして実際の端末で行う必要があります。UnityエディタでTapjoyを動作仕様とした場合、次のようなメッセージが表示されます:

E/TapjoyConnect(20815): ERROR -- call requestTapjoyConnect and make sure to receive the Tapjoy connectSuccess response from the TapjoyConnectNotifier before calling any other Tapjoy methods

SDKのconnect のタイミングを制御できますか?

SDK 11.2.1まではできません。SDK 11.2.2 以降では、プログラム上でconnect処理を制御できます。こちらを ご参照ください。