Virtual Asset (Crypto)

Virtual Asset (Crypto)

The Mindchain Ecosystem refers to a decentralized network built on blockchain technology that encompasses various interconnected components, including cryptocurrencies, own blockchain, decentralized applications (DApps), wallets, centralized exchange (CEX), decentralized exchange (DEX), and digital payment solutions.

Admob Ads (Banner Ads + Interstitial Ads + RewardedVideo Ads + Native Ads ) Solved All On One-1



build.gradle(Module:app)
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
android { compileSdkVersion 29
buildToolsVersion "29.0.3"
defaultConfig {applicationId "com.dreamgarden.testads"
// (Your App package Name)
minSdkVersion 16
targetSdkVersion 29
multiDexEnabled true
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes { release { minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),
'proguard-rules.pro'
} }
}
dependencies { implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.13'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
//Firebase
implementation 'com.google.firebase:firebase-ads:19.0.1'
//implementation 'com.google.firebase:firebase-core:19.0.1'
implementation 'com.google.firebase:firebase-auth:19.3.0'
implementation 'com.google.firebase:firebase-database:19.2.1'
implementation 'com.google.firebase:firebase-storage:19.1.1'
implementation 'com.google.firebase:firebase-messaging:20.1.5'
// Admob
implementation 'com.google.android.gms:play-services-ads:19.1.0'
//Multidex
implementation 'com.android.support:multidex:1.0.3'
}


AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.dreamgarden.testads"> <!-- (Your App package Name)-->
<uses-permission android:name="android.permission.INTERNET" />
<application android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".RewardedActivity"></activity>
<activity android:name=".NativeActivity" />
<activity android:name=".TestNuman" />
<activity android:name=".VideoAds" />
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<meta-data android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-3940256099942544~3347511713" />
</application>
</manifest>


MainActivity.java
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.Toast;
import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.InterstitialAd;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.database.DatabaseReference;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class MainActivity extends AppCompatActivity {
private InterstitialAd mInterstitialAd;
private Button IndBTN,VideoBTN,mNativeAd,mRewardedAds,mTestNumanActivity;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
IndBTN = findViewById(R.id.InsAd);
VideoBTN = findViewById(R.id.Video);
mTestNumanActivity = findViewById(R.id.TestNumanActivity);
mNativeAd = findViewById(R.id.NativeAd);
mRewardedAds = findViewById(R.id.RewardedAds);
prepaperAD();
mTestNumanActivity.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(MainActivity.this, TestNuman.class));
}
});
VideoBTN.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(MainActivity.this, VideoAds.class));
}
});
mNativeAd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(MainActivity.this, NativeActivity.class));
}
});
mRewardedAds.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(MainActivity.this, RewardedActivity.class));
}
});
IndBTN.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}else {
Toast.makeText(MainActivity.this,
"Interstitial Ads Not Load",Toast.LENGTH_LONG).show();
}
prepaperAD();
}
});
AdView adView = findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
adView.loadAd(adRequest);
//Ads Timer
/*
ScheduledExecutorService scheduledExecutorService =
Executors.newSingleThreadScheduledExecutor();
scheduledExecutorService.scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
if (mInterstitialAd.isLoaded()){
mInterstitialAd.show();
}else{
Log.d("TAG","InterstitialAd Not Loaded" );
}
prepaperAD();
}
});
}
},20,20, TimeUnit.SECONDS);
*/
}
public void prepaperAD(){
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId(getString(R.string.InterstitialAdID));
mInterstitialAd.loadAd(new AdRequest.Builder().build());
}
//BackPress
@Override
public void onBackPressed() {
if (mInterstitialAd.isLoaded()){
mInterstitialAd.show();
mInterstitialAd.setAdListener(new AdListener(){
@Override
public void onAdClosed() {
super.onAdClosed();
finish();
}
});
}
else {
super.onBackPressed();}
}
}
// End MainActivity.java


activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
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">
<com.google.android.gms.ads.AdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
ads:adSize="BANNER"
ads:adUnitId="@string/BannerAdID"/>
<TextView
android:id="@+id/todatads"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_below="@+id/adView"
android:text="Today's Ad's:"
android:textColor="@color/colorPrimary"
android:textSize="25sp"
android:textStyle="bold" />
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/todatads"
android:layout_gravity="center"
android:orientation="horizontal"
android:padding="20dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="Current Balance: "
android:textColor="@color/colorPrimary"
android:textSize="25sp" />
<TextView
android:id="@+id/balance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#0C0902"
android:hint="0.00"
android:textSize="25sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="Rs. "
android:textColor="#BC1206"
android:textSize="25sp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearLayout2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_below="@+id/linearLayout1">
<Button
android:id="@+id/Video"
android:layout_width="250dp"
android:layout_height="80dp"
android:textStyle="bold"
android:text="InterstitialAd And Banner With Firebase" />
<Button
android:id="@+id/InsAd"
android:layout_width="250dp"
android:layout_height="80dp"
android:textStyle="bold"
android:text="InterstitialAd Ad Show" />
<Button
android:id="@+id/TestNumanActivity"
android:layout_width="250dp"
android:layout_height="80dp"
android:textStyle="bold"
android:text="InterstitialAd And Banner With Firebase ,Timer Or Back press" />
<Button
android:id="@+id/NativeAd"
android:layout_width="250dp"
android:layout_height="80dp"
android:textStyle="bold"
android:textSize="14dp"
android:text="Native Ads Activity"/>
<Button
android:id="@+id/RewardedAds"
android:layout_width="250dp"
android:layout_height="80dp"
android:textStyle="bold"
android:textSize="14dp"
android:text="Rewarded Ads Activity"/>
</LinearLayout>
</RelativeLayout>


NativeActivity.java
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.RatingBar;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import com.google.android.gms.ads.AdLoader;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.formats.MediaView;
import com.google.android.gms.ads.formats.UnifiedNativeAd;
import com.google.android.gms.ads.formats.UnifiedNativeAdView;
public class NativeActivity extends AppCompatActivity {
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_native);
MobileAds.initialize(this);
AdLoader adLoader = new AdLoader.Builder(this, "ca-app-pub-3940256099942544/2247696110")
.forUnifiedNativeAd(new UnifiedNativeAd.OnUnifiedNativeAdLoadedListener() {
@Override
public void onUnifiedNativeAdLoaded(UnifiedNativeAd unifiedNativeAd) {
//the native ad will be available inside this method (unifiedNativeAd)
UnifiedNativeAdView unifiedNativeAdView = (UnifiedNativeAdView) getLayoutInflater().inflate(R.layout.native_ad_layout, null);
mapUnifiedNativeAdToLayout(unifiedNativeAd, unifiedNativeAdView);
FrameLayout nativeAdLayout = findViewById(R.id.id_native_ad);
nativeAdLayout.removeAllViews();
nativeAdLayout.addView(unifiedNativeAdView);
}
})
.build();
adLoader.loadAd(new AdRequest.Builder().build());
}
public void mapUnifiedNativeAdToLayout(UnifiedNativeAd adFromGoogle, UnifiedNativeAdView myAdView) {
MediaView mediaView = myAdView.findViewById(R.id.ad_media);
myAdView.setMediaView(mediaView);
myAdView.setHeadlineView(myAdView.findViewById(R.id.ad_headline));
myAdView.setBodyView(myAdView.findViewById(R.id.ad_body));
myAdView.setCallToActionView(myAdView.findViewById(R.id.ad_call_to_action));
myAdView.setIconView(myAdView.findViewById(R.id.ad_icon));
myAdView.setPriceView(myAdView.findViewById(R.id.ad_price));
myAdView.setStarRatingView(myAdView.findViewById(R.id.ad_rating));
myAdView.setStoreView(myAdView.findViewById(R.id.ad_store));
myAdView.setAdvertiserView(myAdView.findViewById(R.id.ad_advertiser));
((TextView) myAdView.getHeadlineView()).setText(adFromGoogle.getHeadline());
if (adFromGoogle.getBody() == null) {
myAdView.getBodyView().setVisibility(View.GONE); } else {
((TextView) myAdView.getBodyView()).setText(adFromGoogle.getBody()); }
if (adFromGoogle.getCallToAction() == null) {
myAdView.getCallToActionView().setVisibility(View.GONE); } else {
((Button) myAdView.getCallToActionView()).setText(adFromGoogle.getCallToAction()); }
if (adFromGoogle.getIcon() == null) {
myAdView.getIconView().setVisibility(View.GONE); } else {
((ImageView) myAdView.getIconView()).setImageDrawable(adFromGoogle.getIcon().getDrawable()); }
if (adFromGoogle.getPrice() == null) {
myAdView.getPriceView().setVisibility(View.GONE); } else {
((TextView) myAdView.getPriceView()).setText(adFromGoogle.getPrice()); }
if (adFromGoogle.getStarRating() == null) {
myAdView.getStarRatingView().setVisibility(View.GONE); } else {
((RatingBar) myAdView.getStarRatingView()).setRating(adFromGoogle.getStarRating().floatValue()); }
if (adFromGoogle.getStore() == null) {
myAdView.getStoreView().setVisibility(View.GONE); } else {
((TextView) myAdView.getStoreView()).setText(adFromGoogle.getStore()); }
if (adFromGoogle.getAdvertiser() == null) {
myAdView.getAdvertiserView().setVisibility(View.GONE); } else {
((TextView) myAdView.getAdvertiserView()).setText(adFromGoogle.getAdvertiser()); }
myAdView.setNativeAd(adFromGoogle); }
}


activity_native.xml
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#8A44A3"
tools:context=".NativeActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:layout_width="150dp"
android:layout_height="100dp"
android:layout_gravity="center_horizontal"
android:scaleType="fitXY"
android:padding="10dp"
android:src="@drawable/ic_launcher_background" />
<FrameLayout
android:id="@+id/id_native_ad"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</FrameLayout>
<ImageView
android:layout_width="150dp"
android:layout_height="100dp"
android:padding="10dp"
android:layout_gravity="center_horizontal"
android:scaleType="fitXY"
android:src="@drawable/ic_launcher_background" />
</LinearLayout>
</ScrollView>


RewardedActivity.java
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.rewarded.RewardItem;
import com.google.android.gms.ads.rewarded.RewardedAd;
import com.google.android.gms.ads.rewarded.RewardedAdCallback;
import com.google.android.gms.ads.rewarded.RewardedAdLoadCallback;

public class RewardedActivity extends AppCompatActivity {
RewardedAd rewardedAd;
Button videoButton;
TextView adTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_rewarded);
videoButton = findViewById(R.id.ad_video_button);
adTextView = findViewById(R.id.ad_text);
rewardedAd = new RewardedAd(this, "ca-app-pub-3940256099942544/5224354917");
rewardedAd.loadAd(new AdRequest.Builder().build(), new RewardedAdLoadCallback() {
@Override
public void onRewardedAdLoaded() {
super.onRewardedAdLoaded();
videoButton.setVisibility(View.VISIBLE);
}
});
videoButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
displayAd();
}
});
}
public void displayAd() {
rewardedAd.show(this, new RewardedAdCallback() {
@Override
public void onUserEarnedReward(@NonNull RewardItem rewardItem) {
videoButton.setVisibility(View.INVISIBLE);
adTextView.setText("1 available"); }
}); }
}


activity_rewarded.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ddd"
tools:context=".RewardedActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Magic Ruby"
android:textColor="#ff0088"
android:textSize="40sp" />
<ImageView
android:layout_width="170dp"
android:layout_height="170dp"
android:layout_gravity="center"
android:src="@drawable/ic_launcher_background" />
<TextView
android:id="@+id/ad_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="0 available"
android:textColor="#333"
android:textSize="30sp" />
<Button
android:id="@+id/ad_video_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="20dp"
android:background="#2288FF"
android:padding="10dp"
android:text="Watch Video for 1 Ruby"
android:textColor="#fff"
android:visibility="invisible" />
</LinearLayout>
</RelativeLayout>


TestNuman.javj
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.RelativeLayout;
import android.widget.Toast;
import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdSize;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.InterstitialAd;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class TestNuman extends AppCompatActivity {
AdView mAdview;
FirebaseAuth mAuth;
DatabaseReference mDatabase;
private InterstitialAd mInterstitialAd;
private Button mInsBtn;
String bannerid;
String InterstitialAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_testnuman);
mAuth = FirebaseAuth.getInstance();
mDatabase = FirebaseDatabase.getInstance().getReference();
BannerAds(); mInsBtn =(Button)findViewById(R.id.InsBtn);
mInsBtn.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
if (mInterstitialAd.isLoaded()){
mInterstitialAd.show();
Toast.makeText(TestNuman.this,"Interstitial Ads Button Clickd",Toast.LENGTH_LONG).show(); }
else {
Toast.makeText(TestNuman.this,"Interstitial Ads Not Load",Toast.LENGTH_LONG).show(); }
}
});
ScheduledExecutorService scheduledExecutorService =
Executors.newSingleThreadScheduledExecutor();
scheduledExecutorService.scheduleAtFixedRate(new Runnable() {
@Override public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
if (mInterstitialAd.isLoaded()){
mInterstitialAd.show();
}else{
Log.d("TAG","InterstitialAd Not Loaded" ); }
prepaperAD();
}
}); }
},55,55, TimeUnit.SECONDS);
}
public void BannerAds(){
DatabaseReference roofRef = FirebaseDatabase.getInstance().getReference().child("Adunits");
roofRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
bannerid = String.valueOf(dataSnapshot.child("banner").getValue().toString());
InterstitialAd = String.valueOf(dataSnapshot.child("InterstitialID").getValue().toString());
prepaperAD();
View view = findViewById(R.id.rlbanner);
mAdview = new AdView(TestNuman.this);
mAdview.setAdSize(AdSize.BANNER);
((RelativeLayout) view).addView(mAdview);
mAdview.setAdUnitId(bannerid);
AdRequest adRequest = new AdRequest.Builder().build();
mAdview.loadAd(adRequest);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
}); }
public void prepaperAD(){
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId(InterstitialAd);
mInterstitialAd.loadAd(new AdRequest.Builder().build());
}
@Override
public void onBackPressed() {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
mInterstitialAd.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
super.onAdClosed();
finish();
}
});
} else {
super.onBackPressed(); }
}
}
activity_testnuman.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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=".TestNuman">
<TextView
android:id="@+id/tstView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="25dp"
android:layout_marginLeft="150dp"
android:layout_marginTop="299dp"
android:text="Firebase Auto"
android:textSize="25dp"
android:textStyle="bold" />
<Button
android:id="@+id/InsBtn"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:layout_below="@+id/tstView"
android:layout_centerInParent="true"
android:layout_marginTop="10dp"
android:text=" InterstitialAd And Banner With Firebase ,Timer Or Back press"
android:textSize="20dp" />
<RelativeLayout
android:id="@+id/rlbanner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerInParent="true">
</RelativeLayout>
<RelativeLayout
android:id="@+id/rlnative"
android:layout_below="@+id/rlbanner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerInParent="true">
</RelativeLayout>
</RelativeLayout>
VideoAds.java
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RelativeLayout;
import android.widget.Toast;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdSize;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.InterstitialAd;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
public class VideoAds extends AppCompatActivity {
AdView mAdview;
FirebaseAuth mAuth;
DatabaseReference mDatabase;
private InterstitialAd mInterstitialAd;
private Button mInsBtn,mnextBtn;
String bannerid;
String InterstitialAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activityvideoads);
mAuth = FirebaseAuth.getInstance();
mDatabase = FirebaseDatabase.getInstance().getReference();
BannerAds();
mInsBtn =(Button)findViewById(R.id.InsBtn);
mInterstitialAd = new InterstitialAd(this);
}
public void BannerAds(){
DatabaseReference roofRef = FirebaseDatabase.getInstance().getReference().child("Adunits");
roofRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
bannerid = String.valueOf(dataSnapshot.child("banner").getValue().toString());
InterstitialAd = String.valueOf(dataSnapshot.child("InterstitialID").getValue().toString());
mInterstitialAd.setAdUnitId(InterstitialAd);
mInterstitialAd.loadAd(new AdRequest.Builder().build());
mInsBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mInterstitialAd.loadAd(new AdRequest.Builder().build());
//mInterstitialAd.loadAd(new AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR).build());
if(mInterstitialAd.isLoaded()){
mInterstitialAd.show();
}else {
Toast.makeText(VideoAds.this,"Interstitial Ads Not Load",Toast.LENGTH_LONG).show();
}
}
});
View view = findViewById(R.id.rlbanner);
mAdview = new AdView(VideoAds.this);
mAdview.setAdSize(AdSize.BANNER);
((RelativeLayout) view).addView(mAdview);
mAdview.setAdUnitId(bannerid);
AdRequest adRequest = new AdRequest.Builder().build();
mAdview.loadAd(adRequest);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
}
activityvideoads.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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=".VideoAds">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textStyle="bold"
android:layout_marginTop="125dp"
android:layout_marginLeft="150dp"
android:textSize="20dp"
android:text="Video Activity"/>
<Button
android:id="@+id/InsBtn"
android:layout_width="250dp"
android:layout_height="100dp"
android:layout_centerInParent="true"
android:text="InterstitialAd Ads Show Link to FireBase"
android:textSize="20dp" />
<RelativeLayout
android:id="@+id/rlbanner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerInParent="true">
</RelativeLayout>
</RelativeLayout>
Only Layout
native_ad_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<com.google.android.gms.ads.formats.UnifiedNativeAdView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#000"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="10dp">
<ImageView
android:id="@+id/ad_icon"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_marginRight="20dp"
android:background="#fff" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/ad_headline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="headline"
android:textColor="#fff" />
<TextView
android:id="@+id/ad_advertiser"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="advertiser"
android:textColor="#fff" />
<RatingBar
android:id="@+id/ad_rating"
style="?android:attr/ratingBarStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:isIndicator="true"
android:numStars="5"
android:stepSize="0.5" />
</LinearLayout>
</LinearLayout>
<com.google.android.gms.ads.formats.MediaView
android:id="@+id/ad_media"
android:layout_width="match_parent"
android:layout_height="175dp"
android:background="#fff">
</com.google.android.gms.ads.formats.MediaView>
<TextView
android:id="@+id/ad_body"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
android:text="body of ad"
android:textColor="#fff" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="right"
android:padding="10dp">
<TextView
android:id="@+id/ad_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="price"
android:textColor="#fff" />
<TextView
android:id="@+id/ad_store"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="store"
android:textColor="#fff" />
<Button
android:id="@+id/ad_call_to_action"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#fff"
android:text="Action"
android:textColor="#000" />
</LinearLayout>
</LinearLayout>
</com.google.android.gms.ads.formats.UnifiedNativeAdView>
strings.xml
<resources>
<string name="app_name">Your APP Name</string>
<string name="BannerAdID">ca-app-pub-3940256099942544/6300978111</string>
<string name="InterstitialAdID">ca-app-pub-3940256099942544/1033173712</string>
<string name="RewardedVideoAdID">ca-app-pub-3940256099942544/5224354917</string>
<string name="NativeAdID">ca-app-pub-3940256099942544/2247696110</string>
</resources>



Post a Comment

0 Comments