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 de terceros, por ejemplo, conocido como Facebook Audience Network (FAN). ,
¿Por qué la red de audiencia de Facebook?
- Facebook Audience Network es una de las mejores alternativas a Google Admob para monetizar la App Android o IOS.
- 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 la red de audiencia de Facebook
Existen principalmente cinco tipos de formato flexible y de alto rendimiento disponibles en Facebook Audience Network
- 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.
- Jugables: una experiencia publicitaria de prueba antes de comprar que permite a los usuarios obtener una vista previa de un juego antes de instalarlo.
En este artículo, integremos los anuncios intersticiales de Facebook Audience Network en la aplicación de Android.
Anuncio intersticial: el anuncio intersticial 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 intersticiales es relativamente más alto que los anuncios de banner y también conduce a un CTR (tasa de clics) más alto, lo que genera más ganancias de 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.facebook.android:audience-network-sdk:5.+’
- Vaya a la aplicación -> manifiestos -> sección AndroidManifests.xml y permita » Permiso de Internet «.
<usos-permiso android:name=”android.permission.INTERNET”/>
Paso 3: Diseño de la interfaz de usuario
En el archivo activity_main.xml , agregue solo un botón , de modo que cada vez que el usuario haga clic en el botón, se reproducirá el anuncio de video recompensado.
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 Interstitial Ad By Clicking it --> <Button android:id="@+id/showInterBtn" 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 Interstitial " 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 cree el objeto de la clase Button .
// Creando un objeto de la clase Button
Botón mostrarInterstitialBtn;
- Ahora dentro del método, vincule esos objetos con sus respectivas ID que se han proporcionado en el archivo activity_main.xml .
// vincula esos objetos con sus respectivos id’s que hemos dado en el archivo activity_main.xml
showInterstitialBtn=(Botón)findViewById(R.id.showInterBtn);
- Ahora dentro del método, inicialice el SDK de Facebook Audience Network.
// inicializando el SDK de Audience Network
AudienceNetworkAds.initialize(esto);
- Cree un objeto de InterstitialAd dentro de la clase MainActivity.java
// creando objeto de InterstitialAd
Anuncio Intersticial fb Anuncio Intersticial;
- A continuación, cree un método de vacío privado fuera del método y defínalo.
privado vacío showIntersticial()
{
// inicializando el objeto InterstitialAd
// El constructor de anuncios intersticiales toma 2 argumentos
// 1)Contexto
// 2) Identificación de la ubicación
fbInterstitialAd = new InterstitialAd(this, “IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID”);
// cargando anuncio
fbInterstitialAd.loadAd();
}
- Llame al método interno después de inicializar el SDK.
Nota: Reemplace «IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID» con su propia identificación de ubicación para mostrar anuncios reales.
- A continuación, cree un método de vacío fuera del método al que llamaremos más tarde para mostrar el anuncio.
void showIntersticial()
{
// Comprobando si el anuncio está cargado o no
if(fbInterstitialAd.isAdLoaded())
{
// mostrando anuncio
fbInterstitialAd.show();
}
más
{
// Cargando anuncio si el anuncio no está cargado
fbInterstitialAd.loadAd();
}
}
- Entonces, lo siguiente es llamar al método cuando un usuario hace clic en el botón Mostrar anuncio.
- Ahora, en el método, cree un ClickListener para el botón y llame
// haga clic en el oyente para mostrar el anuncio intersticial
showInterstitialBtn.setOnClickListener(nueva Vista.OnClickListener() {
@Anular
public void onClick (Ver vista) {
mostrarintersticial();
}
});
- Ahora agregue InterstitialAdListener para anuncios intersticiales, para que los usuarios conozcan el estado de los anuncios. Para agregar el método abierto InterstitialAdListener y agregue el siguiente código antes
// Intersticial AdListener
fbInterstitialAdListener.setAdListener(nuevo InterstitialAdListener() {
@Anular
vacío público en InterstitialDisplayed (anuncio publicitario) {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onInterstitialDisplayed”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onInterstitialDismissed(Anuncio publicitario) {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onInterstitialDismissed”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onError(Ad ad, AdError adError) {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onError”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onAdLoaded(Anuncio publicitario) {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onAdLoaded”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onAdClicked(Anuncio publicitario) {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onAdClicked”, Toast.LENGTH_SHORT).show();
}
@Anular
public void onLoggingImpression(Anuncio publicitario) {
// Mostrando mensaje de brindis
Toast.makeText(MainActivity.this, “onLoggingImpression”, Toast.LENGTH_SHORT).show();
}
});
- Y dentro de los métodos InterstitialAdListener 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.facebook.ads.Ad; import com.facebook.ads.AdError; import com.facebook.ads.AudienceNetworkAds; import com.facebook.ads.InterstitialAd; import com.facebook.ads.InterstitialAdListener; public class MainActivity extends AppCompatActivity { // Creating a object of Button class Button showInterstitialBtn; // creating object of InterstitialAd InterstitialAd fbInterstitialAd; @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 showInterstitialBtn = (Button) findViewById(R.id.showInterBtn); // initializing the Audience Network SDK AudienceNetworkAds.initialize(this); loadInterstitial(); // click listener to show Interstitial Ad showInterstitialBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { showInterstitial(); } }); } void showInterstitial() { // Checking If Ad is Loaded or Not if (fbInterstitialAd.isAdLoaded()) { // showing Ad fbInterstitialAd.show(); } else { // Loading Ad If Ad is Not Loaded fbInterstitialAd.loadAd(); } } private void loadInterstitial() { // initializing InterstitialAd Object // InterstitialAd Constructor Takes 2 Arguments // 1)Context // 2)Placement Id fbInterstitialAd = new InterstitialAd(this, "IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID"); // Interstitial AdListener fbInterstitialAd.setAdListener(new InterstitialAdListener() { @Override public void onInterstitialDisplayed(Ad ad) { // Showing Toast Message Toast.makeText(MainActivity.this, "onInterstitialDisplayed", Toast.LENGTH_SHORT).show(); } @Override public void onInterstitialDismissed(Ad ad) { // Showing Toast Message Toast.makeText(MainActivity.this, "onInterstitialDismissed", Toast.LENGTH_SHORT).show(); } @Override public void onError(Ad ad, AdError adError) { // Showing Toast Message Toast.makeText(MainActivity.this, "onError", Toast.LENGTH_SHORT).show(); } @Override public void onAdLoaded(Ad ad) { // Showing Toast Message Toast.makeText(MainActivity.this, "onAdLoaded", Toast.LENGTH_SHORT).show(); } @Override public void onAdClicked(Ad ad) { // Showing Toast Message Toast.makeText(MainActivity.this, "onAdClicked", Toast.LENGTH_SHORT).show(); } @Override public void onLoggingImpression(Ad ad) { // Showing Toast Message Toast.makeText(MainActivity.this, "onLoggingImpression", Toast.LENGTH_SHORT).show(); } }); // loading Ad fbInterstitialAd.loadAd(); } }
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