本节介绍了在开发环境中集成now.gg激励广告模块的步骤。
首先,下载包含激励广告模块的now.gg SDK包,并将其添加到您的开发环境中。
注意:now.gg 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); – 用户关闭了广告,继续应用操作。
rewardEarned 为False。rewardEarned 为True。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");
}
});
});