Android系统中的Admob插播广告
什么是安卓中的Admob横幅广告
Admob是谷歌的一个调解平台。我们可以利用它在我们的安卓应用程序中显示广告。同时,我们可以通过在我们的应用程序中显示广告来挣钱。有不同类型的广告,我们可以在我们的应用程序中显示。在这篇文章中,我们将看看如何在我们的安卓应用中显示Admob的插播广告。
在安卓中实现Admob中间广告
我们将创建一个简单的应用程序,其中我们将简单地显示一个文本视图和一个按钮。点击该按钮后,用户就可以在我们的应用程序中看到插播广告。我们将按照一步一步的指南,使用Kotlin在我们的Android应用程序中实现一个运动布局。
第1步:在Android Studio中创建一个新项目
导航到Android studio,如下图所示。在下面的屏幕上点击新项目来创建一个新的Android Studio项目。
点击新项目后,你会看到下面的屏幕。
在这个屏幕中,我们必须简单地选择空活动并点击下一步。点击下一步后,你会看到下面的屏幕。
在这个屏幕上,我们必须简单地指定项目名称。然后包的名称将被自动生成。
注意 - 请确保选择语言为Java。
在指定了所有的细节后,点击完成,创建一个新的Android studio项目。
一旦我们的项目被创建,我们将看到两个文件被打开,即 activity_main.xml 和 MainActivity.java 文件。
第2步:在build.gradle文件中添加依赖性以使用这个库
导航到Gradle Scripts>build.gradle文件,在dependencies部分添加以下依赖。
implementation 'com.google.android.gms:play-services-ads:21.5.0'
添加上述依赖关系后,你会在IDE的右上角看到立即同步选项。只需点击它就可以同步你的项目并在你的项目中安装这个依赖。
第3步:在我们的AndroidManifest.xml文件中添加Admob应用ID
导航到app>AndroidManifest.xml文件并在应用程序标签内添加。添加以下一行。
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-3940256099942544~3347511713" />
解释 - 在上面的代码中,我们将名称指定为应用ID,并将其值作为应用ID传递。目前,我们指定Admob测试应用程序的ID是为了测试的目的。以后我们可以通过添加Admob提供的原始ID来改变它。
第4步:使用 activity_main.xml 工作
导航到 activity_main.xml。如果这个文件不可见。要打开这个文件。在左侧窗格中导航到app>res>layout>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="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<!-- on below line creating a text view for heading of application-->
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/idBtnDisplayAd"
android:layout_centerInParent="true"
android:layout_margin="10dp"
android:text="Admob Interstitial Ads in Android"
android:textAlignment="center"
android:textColor="@color/black"
android:textSize="25sp"
android:textStyle="bold" />
<!-- on below line creating a button to display ads-->
<Button
android:id="@+id/idBtnDisplayAd"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_margin="10dp"
android:text="Display Ad"
android:textAllCaps="false" />
</RelativeLayout>
解释 - 在上面的代码中,我们正在创建我们的根布局为相对布局。在这个布局中,我们正在创建一个简单的文本视图来显示我们应用程序的标题。
然后,我们创建一个按钮,当用户点击这个按钮时,它将被用来显示中间广告。
第5步:使用MainActivity.java文件
导航到MainActivity.java。如果这个文件不可见。要打开这个文件。在左侧窗格中导航到app>java>你的应用程序的包名。MainActivity.java来打开这个文件。打开这个文件后。将下面的代码添加到其中。在代码中加入注释,以便详细了解。
package com.example.androidjavaapp;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterViewFlipper;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.LoadAdError;
import com.google.android.gms.ads.MobileAds;
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;
public class MainActivity extends AppCompatActivity {
// on below line creating variable for button.
private Button displayAdBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// on below line initialing mobile ads.
MobileAds.initialize(this, new OnInitializationCompleteListener() {
@Override
public void onInitializationComplete(InitializationStatus initializationStatus) {
// on below line displaying a log that admob ads has been initialized.
Log.i("Admob", "Admob Initialized.");
}
});
// on below line initializing variables.
displayAdBtn = findViewById(R.id.idBtnDisplayAd);
// on below line creating and initializing variable for adRequest
AdRequest adRequest = new AdRequest.Builder().build();
// on below line adding click listener for display ads button.
displayAdBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// on below line we are loading interstitial ads setting ad unit id to it, ads request and callback for it.
InterstitialAd.load(getApplicationContext(), "ca-app-pub-3940256099942544/1033173712", adRequest, new InterstitialAdLoadCallback() {
@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
// this method is called when ad is loaded in that case we are displaying our ad.
interstitialAd.show(MainActivity.this);
}
@Override
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
// this method is called when we get any error
Toast.makeText(MainActivity.this, "Fail to load ad..", Toast.LENGTH_SHORT).show();
}
})
}
});
}
}
解释 - 在上面的代码中,我们正在为按钮创建一个变量,我们将用它来显示广告。之后,在onCreate方法中,我们首先初始化移动广告,并在initialize方法中显示一个日志信息。之后,我们用我们在activity_main.xml文件中给出的id来初始化这个变量。之后,我们正在创建和初始化广告请求的变量。然后,我们为我们的按钮添加一个点击监听器来显示广告。在点击监听器中,我们正在加载我们的间隙式广告,为此,我们正在向它传递上下文、广告单元ID、广告请求和回调。在广告加载方法中,我们正在调用显示方法来显示我们的广告。在广告失败的方法中,我们将显示一个错误信息。
添加上述代码后,现在我们只需点击顶部栏的绿色图标,就可以在移动设备上运行我们的应用程序。
注意 - 确保你已经连接到你的真实设备或模拟器。
总结
在上面的教程中,我们了解了什么是安卓中的Admob中间广告,以及我们如何在安卓应用中实现它们并从中赚钱。