How to add Admob Rewarded Video Ads Android Studio | How To Implement Rewarded Ads [2022]

 How to add Admob Rewarded Video Ads Android Studio  | How To Implement Rewarded Ads [2022]

Rewarded ads provide an opportunity for users to watch a video or engage with a playable ad in exchange for a reward within the app.


MainActivity.java

package com.aarappstudios.admobseries;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import com.google.android.gms.ads.AdError;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.FullScreenContentCallback;
import com.google.android.gms.ads.LoadAdError;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.OnUserEarnedRewardListener;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;
import com.google.android.gms.ads.interstitial.InterstitialAd;
import com.google.android.gms.ads.interstitial.InterstitialAdLoadCallback;
import com.google.android.gms.ads.rewarded.RewardItem;
import com.google.android.gms.ads.rewarded.RewardedAd;
import com.google.android.gms.ads.rewarded.RewardedAdLoadCallback;

public class MainActivity extends AppCompatActivity {




public static final String REWARD_AD_UNIT_ID="ca-app-pub-3940256099942544/5224354917";

private RewardedAd mRewardedAd;

public static final String TAG="Mainactivity";

private Button mButton;
private TextView mTextView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

MobileAds.initialize(this, new OnInitializationCompleteListener() {
@Override
public void onInitializationComplete(@NonNull InitializationStatus initializationStatus) {

}
});

loadRewardedAds();

mTextView=findViewById(R.id.contentTV);
mButton=findViewById(R.id.button);
mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {

showRewardAds();

}
});


}


private void showRewardAds() {


if (mRewardedAd!=null)
{
mRewardedAd.show(MainActivity.this, new OnUserEarnedRewardListener() {
@Override
public void onUserEarnedReward(@NonNull RewardItem rewardItem) {
int amount=rewardItem.getAmount();
String type=rewardItem.getType();
mTextView.setText("The content is unlocked : Answer is 40");
}
});
}else {
Toast.makeText(MainActivity.this, "Reward ads is not ready yet", Toast.LENGTH_SHORT).show();
}

}

private void loadRewardedAds()
{


AdRequest adRequest=new AdRequest.Builder().build();
RewardedAd.load(this, REWARD_AD_UNIT_ID, adRequest, new RewardedAdLoadCallback() {
@Override
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
super.onAdFailedToLoad(loadAdError);
mRewardedAd=null;
}

@Override
public void onAdLoaded(@NonNull RewardedAd rewardedAd) {
super.onAdLoaded(rewardedAd);
mRewardedAd=rewardedAd;

rewardedAd.setFullScreenContentCallback(new FullScreenContentCallback() {
@Override
public void onAdClicked() {
super.onAdClicked();
}

@Override
public void onAdDismissedFullScreenContent() {
super.onAdDismissedFullScreenContent();

}

@Override
public void onAdFailedToShowFullScreenContent(@NonNull AdError adError) {
super.onAdFailedToShowFullScreenContent(adError);
}

@Override
public void onAdImpression() {
super.onAdImpression();
}

@Override
public void onAdShowedFullScreenContent() {
super.onAdShowedFullScreenContent();
}
});

}
});

}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">


<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Show Rewards Ads"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.317" />

<TextView
android:id="@+id/contentTV"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="44dp"
android:text="The content is locked"
android:textAlignment="center"
android:textSize="16sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/button" />



</androidx.constraintlayout.widget.ConstraintLayout>





Post a Comment

0 Comments