原生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'])
 }

初始化激励广告模块

在您的应用可以展示广告之前,必须从应用main activity的 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");
                 // 重试创建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() {
       
 // 广告显示在用户的屏幕上
        @Override
        public void onAdShownToUser() {
            Toast.makeText(getBaseContext(), "Ad is displayed on the user’s screen", Toast.LENGTH_LONG).show();
        }
      
 // 广告加载失败
        @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();
        }

 //用户关闭广告,继续应用操作
        @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();
        }

 //用户赚取了奖励
        @Override
        public void onUserEarnedReward() {
            Log.d(TAG, "rewardEarned");
        }
    });
 });

重要信息

×
文本已复制到剪贴板
copyLinkText
有疑问?请通过以下方式联系我们: dev-support@now.gg