[Windows Phone] Usando el nuevo control Ad Mediator

MoneyMonetización de aplicaciones

El desarrollar una aplicación móvil elegir su modelo de negocio es un punto vital. Los motivos por el cual como desarrollador decidimos publicar aplicaciones son muy variados:

  • Por amor al arte.
  • Por dinero.
  • Por aprender, etc.
  • Porque deseamos cubrir un hueco existente.
  • ¿Habíamos mencionado ya el dinero?

Hay muchos motivos. Un motivo habitual suele ser el obtener una ganacia económica por nuestro trabajo. Nuestras aplicaciones puede ser gratuitas y de pago. Además, nuestras aplicaciones de pago pueden contar con modo Trial (sumamente recomendado) e incluso tenemos disponible la opción de añadir In App Purchase.

Si deseamos obtener un beneficio económico parece obvio que debemos optar por aplicaciones de pago. Sin embargo, tenemos otras opciones interesantes para obtener beneficio económico como el uso de publicidad.

Actualmente en la Windows Phone Store, la publicidad representa aproximadamente la tercera parte de todos los ingresos generados por los desarrolladores.

El “problema” del uso de publicidad

Si nos decidimos a utilizar publicidad contamos con  varios SDKs de bastante calidad a la hora de generar publicidad y por lo tanto beneficios. Sin embargo, con todas las opciones nos preocuparemos por el eCPM (es el coste efectivo por cada mil impresiones, es decir, nuestros beneficios). Cada sistema cuenta con un valor diferente dependiendo de muchos factores como:

  • Categoría de anuncios elegidos
  • Mercado
  • El día y mes de la impresión
  • Etc

Bien, es un problema conocido y que los desarrolladores intentamos solucionar o al menos reducir el efecto al máximo.

¿Cómo?

Una de las soluciones habituales es utilizar distintas redes de publicidad para aumentar la disponibilidad de anuncios y asi los ingresos. En el momento en el que una red de anuncios no es capaz de mostrar un anuncio u otra red aporta un beneficio superior,  la aplicacion pasa a utilizar una segunda red y asi sucesivamente.

Ad Mediation

El proceso descrito anteriormente es un proceso más o menos complejo y sacado a base de pruebas y experiencia. Recientemente Microsoft ha anunciado Windows ad mediation, un sistema de mediación de anuncios que nos permite utilizar múltiples SDKs. El algoritmo utilizará un sistema de anuncios, si no es capaz de servir ningun anuncio, se llamará a un segundo sistema, luego a un tercero y asi sucesivamente. Basicamente, nos permite aumentar nuestro rendimiento a la hora de obtener beneficios mediante publicidad de una forma muy sencilla.

NOTA: El uso de Ad Mediator no nos garantizará que tendremos publicidad en el 100% de las situaciones. Nos garantiza que si un proveedor de publicidad no cuenta con anuncios se utilizará otro diferente.

Entre las características principales contamos con:

  • Podemos realizar una configuración a nivel global e incluso a nivel local en ciertos mercados.
  • Control sobre la tasa de refresco de la publicidad.
  • Podemos pausar y reanudar la publicidad.
  • Podemos elegir la prioridad de cada red de publicidad.
  • Podemos excluir redes de publicidad.

Windows Ad Mediation esta ya disponible para usar en Windows Phone 8.0, Windows Phone 8.1 Silverlight y aplicaciones universales XAML y los sistemas de publicidad soportados en estos momentos son:

NOTA: En Windows XAML los servicios AdMob, MobFox, InMobi y Inneractive no estan soportados.

En este artículo vamos a utilizar Windows Ad Mediator en una aplicación Universal realizando la integración paso a paso.

¿Te apuntas?

Usando el control Ad Mediator

Obtener la extensión Windows Ad Mediator

El primero paso que debemos llevar a cabo para utilizar Ad Mediator es descargar e instalar la extensión.

Windows Ad Mediator

Windows Ad Mediator

Descargar Ad Mediator

Descargar Ad Mediator

Nueva aplicación

Comenzamos creando un nuevo proyecto:

Nueva aplicación Windows Phone XAML

Nueva aplicación Windows Phone XAML

Añadir el control AdMediatorControl

En las referencias del proyecto hacemos clic derecho y elegimos la pestaña Extensiones dentro de Windows Phone 8.1:

Añadimos la referencia a la extensión

Añadimos la referencia a la extensión

Una vez añadida la referencia podemos arrastrar directamente el control AdMediatorControl en la vista de diseño en la vista o vistas deseadas.

Cuadro de herramientas

Cuadro de herramientas

<adMediator:AdMediatorControl x:Name="AdMediator_01B3E5" HorizontalAlignment="Left" Height="80" Id="AdMediator-Id-9A1E0E47-BE2F-41CC-A28B-0E14AD66165E" VerticalAlignment="Top" Width="480"/>

Tras arrastrar el control se generara en XAML un código similar al anterior. Como podemos ver se añade un nombre y un identificador único. Tanto el nombre como el identificador los utilizaremos a la hora de configurar Ad Mediator.

eL namespace XAML utilizado es el siguiente (App Windows Phone XAML):

xmlns:adMediator="using:Microsoft.AdMediator.WindowsPhone81"

Una vez añadido el control el siguiente paso sera configurarlo añadiendo los servicios de publicidad deseados.

Configuración del control AdMediatorControl

Una vez añadido el control AdMediatorControl es hora de configurarlo conectándolo a servicios conectados.

Hacemos clic derecho sobre el proyecto en el explorador de soluciones y seleccionamos la opción Nuevo  -> Servicio conectado.

Servicios conectados

Servicios conectados

Nos aparecerá la ventana de gestión de servicios conectados. Por defecto, las librerías de Microsoft Advertising se añaden por defecto.

NOTA: Si no deseamos utilizar Microsoft Advertising lo podemos eliminar sin problemas.

Para añadir otros proveedores de anuncios podemos pulsar el botón Seleccionar redes de anuncios:

Añadir nuevos servicios

Añadir nuevos servicios

Nos aparecerá una ventana donde podremos seleccionar cada una de las redes de anuncios disponibles para el tipo de proyecto en el que estemos trabajando.

Al añadir una nueva opción:

AdMediator 08

Referencias añadidas automáticamente

Todas las librerías necesarias para utilizar la red de anuncios seleccionada se añaden automáticamente al proyecto.

En este punto solo nos falta configurar cada red de anuncio añadida. Pulsamos el botón Configurar de la red de anuncios seleccionada.

Configurar red de anuncios

Configurar red de anuncios

 Añadir las capacidades necesarias

Segun el sistema de publicidad utilizado se necesitarán unas capacidades u otras. Podemos ver las capacidades requeridas por cada servicio de publicidad en la ventana de gestión de servicios. Para evitar excepciones al utilizar publicidad debemos añadir las capacidades requeridas en el archivo de manifiesto de la aplicación.

Capacidades de la App

Capacidades de la App

Gestión de excepciones no controladas desde la publicidad

Debemos asegurarnos de controlar las excepciones no controladas que nos puedan llegar desde las diferentes redes de anuncios:

// In App.xaml.cs file, register with the UnhandledException event handler.
UnhandledException += App_UnhandledException;
void App_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
      if (e != null)
      {
         Exception exception = e.Exception;
         if (exception is NullReferenceException && exception.ToString().ToUpper().Contains("SOMA"))
         {
            Debug.WriteLine("Handled Smaato null reference exception {0}", exception);
            e.Handled = true;
            return;
         }
      }

      // APP SPECIFIC HANDLING HERE

      if (Debugger.IsAttached)
      {
         // An unhandled exception has occurred; break into the debugger
         Debugger.Break();
      }
}

Otras opciones de configuración

Podemos especificar el tiempo en segundos (de 2 a 30 segundos) que Ad Mediator espera a la respuesta de una red de anuncios antes de pasar a la siguiente en caso de no tener respuesta válida. La gestión de timeouts es configurable. Por defecto, el tiempo de espera es de 5 segundos para todas las redes excepto Microsoft Advertising y Google AdMob que cuentan con 10 segundos por defecto.

Podemos especificar el tiempo de timeout de una red concreta facilmente:

AdMediatorControl.AdSdkTimeouts[AdSdkNames.MicrosoftAdvertising] = TimeSpan.FromSeconds(15);

Ad Mediator también nos facilita distintos eventos para gestionar cuando se producen eventos, errores, etc.:

AdMediator_Bottom.AdSdkError += AdMediator_Bottom_AdError;
AdMediator_Bottom.AdMediatorFilled += AdMediator_Bottom_AdFilled;
AdMediator_Bottom.AdMediatorError += AdMediator_Bottom_AdMediatorError;
AdMediator_Bottom.AdSdkEvent += AdMediator_Bottom_AdSdkEvent;

Testing

Probando la aplicación en el emulador se utilizarán una serie de metadatos de prueba que nos permite probar la aplicación aun sin configurar la red de anuncios. Los anuncios rotarán secuencialmente con una misma duración en ciclo. Nos permite verificar errores y eventos para garantizar que todo lo llevamos bien.

Tras asegurarnos, debemos probar en dispositivos físicos antes de publicar. En este caso debemos tener cada red de anuncio configurada y cada anuncio se mostrarás durante 60 segundos (podemos ajustar este parámetro al publicar). De nuevo, debemos asegurarnos que cada red de anuncio es capaz de mostrar contenido verificando eventos y errores.

Podéis descargar el ejemplo realizado a continuación:

Publicación

Una vez tengamos nuestra aplicación lista y testeada es hora de publicar la aplicación. Al crear el paquete y subirlo a la Store, si la App usa Ad Mediator, se detecta automáticamente junto a las redes de anuncios utilizadas. En este caso tendremos disponibles una nueva sección de configuración específica para el Ad Mediator.

Dev Center Ad Mediator

Dev Center Ad Mediator

NOTA: La primera vez que publicamos la aplicación crearemos una configuración general. En las sucesivas actualizaciones podemos crear configuraciones específicas para distintos mercados.

Más información

4 pensamientos en “[Windows Phone] Usando el nuevo control Ad Mediator

  1. Hola Javier, gracias por este artículo tan bien explicado. Aprovecho para hacerte una pregunta: según tu experiencia, ¿cual es el proveedor de publicidad más rentable? ¿Que configuración recomiendas para sacar el máximo beneficio?

    • Hola Dani,

      Es una pregunta que podría tener una respuesta muy amplia, ya que depende un poco de los países destinatarios de tu App. En cualquier caso lo que nos interesa es conseguir un FillRate muy elevado (al menos superar el 80%).
      En España por ejemplo, ahora mismo, PubCenter garantiza un 25% aprox. de FillRate. AdMob ofrece un 98% de FillRate. Hay otras opciones todas las demas oscilan entre esos rangos.
      En cuanto al nivel económico, tambien depende de varios factores pero a grueso modo, unas 1000 impresiones te darían unos 90 céntimos aprox.
      En fin, espero haber sido de ayuda. Si tienes más dudas o quieres que veamos esto de manera más concreta, encantado.

      Un saludo.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s