Tapjoyオファーウォール広告実装方法 - glossom-dev/AdfurikunSDK-Android GitHub Wiki

アドフリくん管理画面で広告枠を発行

アドフリくん管理画面で広告枠の追加をする際に、バナー種類「オファーウォール」を選択します。
追加した広告枠の設定画面に入り、「オファーウォール利用申請」を選択する事でTapjoyオファーウォールの広告枠が発行されます。

Tapjoyオファーウォール広告を実装

Tapjoy SDKの導入、オファーウォール広告表示の実装を行います。詳細は、Tapjoyのドキュメントを参考にして下さい。
また、サーバ間の成果通知の実装については、こちらを参考にして下さい。
※ 本ドキュメントの動作確認TapjoySDKバージョン: 13.4.1

Tapjoy SDK導入

Mavenを利用してTapjoy SDKを導入

アプリの build.gradle ファイルに下記のように付け加えます。Tapjoy SDKのバージョンに合わせてバージョン番号を修正して下さい。

    repositories {
      maven {
        name "Tapjoy's maven repo"
        url "https://sdk.tapjoy.com/"
      }
      maven {
        name 'Google'
        url 'https://maven.google.com/'
      }

    }

    dependencies {
      implementation 'com.tapjoy:tapjoy-android-sdk:13.4.1'
    }

Tapjoyオファーウォール広告表示の実装

1. Tapjoy Connectを実装

Tapjoy connect をアプリに実装します。 これにより、アプリからTapjoy SDK を"起動"します。 Tapjoy SDK Keyはアドフリくん管理画面で発行された「sdk_key」を使用して下さい。

実装例

Kotlin
    val connectFlags = Hashtable<String, Any>()
    Tapjoy.connect(applicationContext, "Tapjoy SDK Key", connectFlags, object : TJConnectListener() {
            override fun onConnectSuccess() {
            
            }

            override fun onConnectFailure(code: Int, message: String) {
            
            }
    })
Java
    Hashtable<String, Object> connectFlags = new Hashtable<String, Object>();
    Tapjoy.connect(getContext().getApplicationContext(), "Tapjoy SDK Key", connectFlags, new TJConnectListener() {
        @Override
        public void onConnectSuccess() {
        
        }
        @Override
        public void onConnectWarning(int code, String message) {

        }
        @Override
        public void onConnectFailure(int code, String message) {

        }
    });

2. プレイスメントをリクエストする実装

TJPlacementクラスにプレイスメント名を指定して初期化してインスタンスを作成します。 プレイスメント名はアドフリくん管理画面で発行された「placement_id」を使用して下さい。 また、デリゲートを実装してコールバックを受け取れます(以下で説明します)。

Kotlin
Tapjoy.setActivity(activity)

val placementListener: TJPlacementListener = this
val p: TJPlacement = Tapjoy.getPlacement("プレイスメント名", placementListener)
p?.requestContent()
Java
Tapjoy.setActivity(activity);

TJPlacementListener placementListener = this;
TJPlacement p = Tapjoy.getPlacement("プレイスメント名", placementListener);
p.requestContent();

※ コンテンツをリクエストする前に、Tpajoy connectコールが成功しているようにして下さい。 onConnectSuccess コールバックを受ける前にコンテンツをリクエストしないようにして下さい。

3. リスナーを実装

プレイスメント関連の様々なレスポンスを処理するためのTJPlacementListenerの実装を必要行います。TJPlacementListener インターフェースで定義されているメソッドは以下の通りです。

Kotlin
func onRequestSuccess(placement: TJPlacement?) // サーバへのコンテンツリクエストが正常に処理された事を表します。コンテンツが存在するという意味ではありません。
func onRequestFailure(placement: TJPlacement?, error: TJError)
func onContentReady(placement: TJPlacement?) //広告が表示可能になった場合に呼び出されます。
func onContentShow(placement: TJPlacement?)
func onContentDismiss(placement: TJPlacement?)
Java
public void onRequestSuccess(TJPlacement placement); // Tapjoy サーバへのコンテンツリクエストが正常に処理された事を表します。コンテンツが存在するという意味ではありません。
public void onRequestFailure(TJPlacement placement, TJError error);
public void onContentReady(TJPlacement placement); //広告が表示可能になった場合に呼び出されます。
public void onContentShow(TJPlacement placement);
public void onContentDismiss(TJPlacement placement);

4. プレイスメントの表示

コンテンツを表示するには、showContent メソッドを呼び出します。

Kotlin
if(mPlacement?.isContentReady() == true) {
    mPlacement?.showContent()
}
Java
if(tjPlacement.isContentReady()) 
{
    tjPlacement.showContent();
}
⚠️ **GitHub.com Fallback** ⚠️