Para ganar dinero con la aplicación o el juego de Android , hay muchas formas, como compras en la aplicación, patrocinio, anuncios y muchas más. Pero hay otro método popular para ganar dinero con la aplicación de Android mediante la integración de un anuncio, por ejemplo, conocido como Google AdMob . Google AdMob está diseñado pensando en los desarrolladores. AdMob ayuda a obtener más ingresos de la aplicación, brindar una mejor experiencia de usuario y mostrar información procesable, todo con herramientas automatizadas que hacen el trabajo duro por usted.
¿Por qué Google Admob Network?
- El pago mínimo es de $100
- Amplia gama de formatos de anuncios
- Tasas máximas de llenado
- Alto eCPM (costo efectivo por mil)
- Anuncios de calidad
- Anuncios personalizados
Formatos de Google AdMob
Existen principalmente cuatro tipos de formato flexible y de alto rendimiento disponibles en Google AdMob
- Nativo: anuncios que usted diseña para adaptarse a la aplicación, sin problemas
- Intersticial : Anuncios a pantalla completa que captan la atención y se vuelven parte de la experiencia.
- Banner : Formatos tradicionales en una variedad de ubicaciones.
- Video recompensado: un anuncio de video inmersivo iniciado por el usuario que recompensa a los usuarios por mirar.
En este artículo, integremos Google Admob SDK para mostrar anuncios de video recompensados en la aplicación de Android.
Vídeo premiado:
- El anuncio de video recompensado es un anuncio de pantalla completa que cubre toda la interfaz de usuario de la aplicación. El eCPM (costo efectivo por mil) de los anuncios de video recompensados es relativamente más alto que el de los anuncios intersticiales y de banner y también conduce a un CTR (tasa de clics) más alto, lo que genera más ganancias de su aplicación.
- El usuario obtiene una recompensa en la aplicación cuando ve el video recompensado de principio a fin. Este tipo de anuncio se usa principalmente en juegos y también se puede usar en la aplicación.
Acercarse
Paso 1: Creación de un nuevo proyecto
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio. Tenga en cuenta que elija Java como lenguaje aunque vamos a implementar este proyecto en lenguaje Java.
Paso 2: antes de ir a la sección de codificación, primero haga una tarea previa
- Vaya a aplicación -> res -> valores -> archivo colors.xml y configure los colores para la aplicación.
colors.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="colorPrimary">#0F9D58</color> <color name="colorPrimaryDark">#0F9D58</color> <color name="colorAccent">#05af9b</color> </resources>
- Vaya a la sección Gradle Scripts -> build.gradle (Módulo: aplicación) e importe las siguientes dependencias y haga clic en » sincronizar ahora» en la ventana emergente anterior.
implementación ‘com.google.android.gms:play-services-ads:19.3.0’
- Vaya a la aplicación -> manifiestos -> sección AndroidManifests.xml y permita » Permiso de Internet «.
<usos-permiso android:name=”android.permission.INTERNET”/>
- Vaya a la sección app->manifests->AndroidManifest.xml y agregue la etiqueta de metadatos dentro de la etiqueta <application> .
<metadatos
android:name=”com.google.android.gms.ads.APPLICATION_ID”
android:value=”ca-app-pub-3940256099942544~3347511713″
/>
Paso 3: Diseño de la interfaz de usuario
En el archivo activity_main.xml, agregue un botón para que cuando el usuario haga clic en el botón, el video recompensado se reproduzca en la pantalla.
activity_main.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" tools:context=".MainActivity"> <!-- Button to Show Rewarded Video Ad By Clicking it --> <Button android:id="@+id/showVideoBtn" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerInParent="true" android:layout_margin="8dp" android:background="@color/colorPrimary" android:padding="16dp" android:text="Show Rewarded Video Ad " android:textColor="#ffff" android:textSize="20dp" /> </RelativeLayout>
Paso 4: trabajar con el archivo MainActivity.java
- Abra el archivo MainActivity.java allí dentro de la clase, primero que nada, cree el objeto de la clase Button.
// Creando un objeto de la clase Button
Botón mostrarVideoAdBtn;
- Ahora, dentro del método, vincule esos objetos con sus respectivos ID que se proporcionan en el archivo activity_main.xml .
// vincula esos objetos con sus respectivos id’s que hemos dado en el archivo activity_main.xml
showVideoAdBtn=(Botón)findViewById(R.id.showVideoBtn);
- Ahora dentro del método, inicialice el SDK de Google Admob
// inicializando el SDK de Google Admob
MobileAds.initialize(esto);
- Cree un objeto de RewardedVideoAd dentro de la clase MainActivity.java
// creando el objeto de RewardedVideoAd
privado AdMobrewardedVideoAd AdMobrewardedVideoAd;
- Cree un ID de anuncio de video recompensado de AdMob dentro de la clase MainActivity.java
// ID de anuncio de video recompensado de AdMob
String privada AdId = «ca-app-pub-3940256099942544/5224354917»;
- A continuación, cree un método de vacío privado fuera del método y defínalo.
void loadRewardedVideoAd()
{
// inicializando el objeto de anuncio de video recompensado
// El constructor de anuncios de video recompensado toma el contexto como su argumento
AdMobrewardedVideoAd = MobileAds.getRewardedVideoAdInstance(esto);
// Cargando anuncio de video recompensado
AdMobrewardedVideoAd.loadAd(AdId, nueva AdRequest.Builder().build());
}
- Llame al método interno después de inicializar el SDK.
Nota : Reemplace » AdId » con su propia identificación de anuncio de aplicación para mostrar anuncios reales.
- A continuación, cree un método vacío fuera del método al que llamaremos más tarde para mostrar el anuncio.
público vacío showRewardedVideoAd()
{
if(AdMobrewardedVideoAd.isLoaded())//Comprobar si el anuncio está cargado o no
{
// mostrando anuncio de video
AdMobrewardedVideoAd.show();
}
más
{
// Cargando anuncio de video recompensado
AdMobrewardedVideoAd.loadAd(AdId, nueva AdRequest.Builder().build());
}
}
- Así que lo siguiente es llamar al método. Ahora, en el método, cree un ClickListener para el botón y llame
// haga clic en el oyente para mostrar el anuncio de video recompensado
showVideoAdBtn.setOnClickListener(nueva Vista.OnClickListener() {
@Anular
public void onClick (Ver vista) {
showRewardedVideoAd();
}
});
- Ahora agregue RewardedVideoAdListener para el anuncio de video recompensado, para que el usuario conozca el estado de los anuncios.
- Para agregar el método abierto RewardedVideoAdListener y agregue el siguiente código antes ;
// Oyente de anuncio de video recompensado
AdMobrewardedVideoAd.setRewardedVideoAdListener(new RewardedVideoAdListener() {
@Anular
public void onRewardedVideoAdLoaded() {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onRewardedVideoAdLoaded”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onRewardedVideoAdOpened() {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onRewardedVideoAdOpened”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onRewardedVideoStarted() {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onRewardedVideoStarted”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onRewardedVideoAdClosed() {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onRewardedVideoAdClosed”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onRewarded(RecompensaItem recompensaItem) {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onRewarded”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onRewardedVideoAdLeftApplication() {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onRewardedVideoAdLeftApplication”, Toast.LENGTH_SHORT).show();
}
@Anular
vacío público enRewardedVideoAdFailedToLoad(int i) {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onRewardedVideoAdFailedToLoad”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onRewardedVideoCompleted() {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onRewardedVideoCompleted”, Toast.LENGTH_SHORT).show();
}
});
- Y dentro de los métodos RewardedVideoAdListener Override, se muestra un mensaje de alerta para que los usuarios conozcan el estado del anuncio. A continuación se muestra el código completo del archivo MainActivity.Java .
MainActivity.Java
package org.geeksforgeeks.project; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; import androidx.appcompat.app.AppCompatActivity; import com.google.android.gms.ads.AdRequest; import com.google.android.gms.ads.MobileAds; import com.google.android.gms.ads.reward.RewardItem; import com.google.android.gms.ads.reward.RewardedVideoAd; import com.google.android.gms.ads.reward.RewardedVideoAdListener; public class MainActivity extends AppCompatActivity { // Creating a object of Button class Button showVideoAdBtn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // link those objects with their respective id's // that we have given in activity_main.xml file showVideoAdBtn = (Button)findViewById(R.id.showVideoBtn); // initializing the Google Admob SDK MobileAds.initialize(this); // loading Video Ad loadRewardedVideoAd(); // click listener to show Rewarded Video Ad showVideoAdBtn.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { // showing Ad showRewardedVideoAd(); } }); } // creating RewardedVideoAd object private RewardedVideoAd AdMobrewardedVideoAd; // AdMob Rewarded Video Ad Id private String AdId = "ca-app-pub-3940256099942544/5224354917"; void loadRewardedVideoAd() { // initializing RewardedVideoAd Object // RewardedVideoAd Constructor Takes Context as its // Argument AdMobrewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this); // Rewarded Video Ad Listener AdMobrewardedVideoAd.setRewardedVideoAdListener( new RewardedVideoAdListener() { @Override public void onRewardedVideoAdLoaded() { // Showing Toast Message Toast .makeText(MainActivity.this, "onRewardedVideoAdLoaded", Toast.LENGTH_SHORT) .show(); } @Override public void onRewardedVideoAdOpened() { // Showing Toast Message Toast .makeText(MainActivity.this, "onRewardedVideoAdOpened", Toast.LENGTH_SHORT) .show(); } @Override public void onRewardedVideoStarted() { // Showing Toast Message Toast .makeText(MainActivity.this, "onRewardedVideoStarted", Toast.LENGTH_SHORT) .show(); } @Override public void onRewardedVideoAdClosed() { // Showing Toast Message Toast .makeText(MainActivity.this, "onRewardedVideoAdClosed", Toast.LENGTH_SHORT) .show(); } @Override public void onRewarded( RewardItem rewardItem) { // Showing Toast Message Toast .makeText(MainActivity.this, "onRewarded", Toast.LENGTH_SHORT) .show(); } @Override public void onRewardedVideoAdLeftApplication() { // Showing Toast Message Toast .makeText( MainActivity.this, "onRewardedVideoAdLeftApplication", Toast.LENGTH_SHORT) .show(); } @Override public void onRewardedVideoAdFailedToLoad( int i) { // Showing Toast Message Toast .makeText( MainActivity.this, "onRewardedVideoAdFailedToLoad", Toast.LENGTH_SHORT) .show(); } @Override public void onRewardedVideoCompleted() { // Showing Toast Message Toast .makeText( MainActivity.this, "onRewardedVideoCompleted", Toast.LENGTH_SHORT) .show(); } }); // Loading Rewarded Video Ad AdMobrewardedVideoAd.loadAd( AdId, new AdRequest.Builder().build()); } public void showRewardedVideoAd() { // Checking If Ad is Loaded or Not if (AdMobrewardedVideoAd.isLoaded()) { // showing Video Ad AdMobrewardedVideoAd.show(); } else { // Loading Rewarded Video Ad AdMobrewardedVideoAd.loadAd( AdId, new AdRequest.Builder().build()); } } }
Paso 5: archivo AndroidManifest.xml
A continuación se muestra el código completo para el archivo AndroidManifest.xml .
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.geeksforgeeks.project"> <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=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!-- meta data tag for admob Note:replace below app id value to your own app id --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-3940256099942544~3347511713"/> </application> </manifest>
Salida: ejecutar en el emulador
Publicación traducida automáticamente
Artículo escrito por onlyklohan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA