ネイティブAndroid向けリワード広告

このセクションでは、now.ggリワード広告モジュールを開発環境に統合する手順を説明します。

まずは、リワード広告モジュールを含む now.gg SDKダウンロードパッケージをダウンロードし、開発環境に追加してください。

※now.gg SDKダウンロードパッケージには、リワード広告モジュール、デモアプリ、コードが含まれています。

SDKライブラリの追加

1. 圧縮されたnow.ggリワード広告モジュールを解凍し、パッケージ内の.aarファイルを探します。

   
 RewardedAds.aar

2. ゲームのbuild.gradleファイルに以下の依存関係を追加します。

   
 dependencies {
         implementation fileTree(dir: 'libs', include: ['*.aar'])
 }

リワード広告モジュールの初期化

アプリが広告を表示する前に、アプリのメインアクティビティの onCreate メソッドからモジュー ルを初期化する必要があります。

モジュールを初期化するには、NowGGAds.initialize() 関数を呼び出します。初期化が完了すると、この関数は完了リスナーのコールバックも生成します。

※モジュールの初期化は一度だけ、理想的にはアプリの起動時に行う必要があります。

次のコードセグメントは、この実装を示しています。

public class MainActivity extends AppCompatActivity {
 public static final String TAG = "RewardsTest";
 public Button showAdButton;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);
     showAdButton = findViewById(R.id.showAd);

     NowGGAds.initialize(this, new OnInitializationCompleteListener() {
         @Override
         public void onInitializationComplete(InitializationStatus initializationStatus) {
             Log.d(TAG, "onInitializationComplete: " + initializationStatus);

             if (initializationStatus.getState().equals(State.NOT_READY)) {
                 Log.d(TAG, "onInitializationComplete: error");
                 // retry creating NowGGAds
             }
         }
     });
 }
 }

リワード広告の表示

モジュールが正常に初期化されると、アプリ内リワード広告を表示できるようになります。

要件に基づいて、リワード広告モジュールの NowGGAds.showRewardedAd() 関数を呼び出すことで、アプリ内にリワード広告を表示できます。

now.ggリワード広告では、以下のコールバック関数を使用して、リワード広告リクエストのステータスをアプリに通知します。

  • void onAdShownToUser(); – ユーザーの画面に広告が表示されます。
  • void onAdFailedToLoad(String reason); – 広告の読み込みに失敗。
  • void onAdDismissed(boolean rewardEarned); – ユーザーによって広告が却下されています。アプリの操作を続行してください。
    • 広告がユーザーによって早々に却下された場合、rewardEarnedFalseになります。
    • 広告が報酬を得るために必要なランタイムを完了した場合、rewardEarnedTrueになります。
  • void onUserEarnedReward(); – ユーザーが報酬を得ています。

次のコードセグメントに、上記のコールバック関数とその実装を示します。

 
showAdButton.setOnClickListener(view -> {
    NowGGAds.showRewardedAd(this, new AdStatusListener() {
       
 // Ad is displayed on the User's screen
        @Override
        public void onAdShownToUser() {
            Toast.makeText(getBaseContext(), "Ad is displayed on the user’s screen", Toast.LENGTH_LONG).show();
        }
      
 // Ad failed to load
        @Override
        public void onAdFailedToLoad(String s) {
            Log.d(TAG, "onAdFailedToLoad() called with: s = [" + s + "]");
            Toast.makeText(getBaseContext(), "Ad failed to load", Toast.LENGTH_SHORT).show();
        }

 //Ad was dismissed by the user; continue with app operations.
        @Override
        public void onAdDismissed(boolean rewardEarned) {
            if (rewardEarned)
                Toast.makeText(getBaseContext(), "Congrats, you earned a reward", Toast.LENGTH_LONG).show();
            else
                Toast.makeText(getBaseContext(), "Ad was dismissed - No reward this time!", Toast.LENGTH_LONG).show();
        }

 //User earned a reward
        @Override
        public void onUserEarnedReward() {
            Log.d(TAG, "rewardEarned");
        }
    });
 });

重要な情報
×
テキストがクリップボードにコピーされました。
copyLinkText
ご不明な点がございましたら、お気軽にお問い合わせください。 dev-support@now.gg