pubCenter_thumb.jpg

Ads in Apps

¡Hola a todos! Hoy vamos a ver cómo poner publicidad en nuestras aplicaciones y algunos de los servicios de publicidad que existen.

Capabilities

Antes de nada comentar las Capabilities que debemos habilitar para incluir los anuncios.

  • ID_CAP_PHONEDIALER
  • ID_CAP_NETWORKING
  • ID_CAP_WEBBROWSERCOMPONENT
  • ID_CAP_ENTITY_USER
  • ID_CAP_MEDIALIB

Existen una gran variedad de servicios de anuncios para las aplicaciones. Vamos a ver alguno de ellos y sus principales características.

Microsoft pubCenter

El Microsoft pubCenter es el servicio de anuncios de Microsoft.

Instalar Microsoft Advertising SDK

En Visual Studio 2013 ya viene instalado el SDK para aplicaciones de Windows 8.1. Lo podemos descargar de aquí si no lo tenemos instalado.

Añadir un AdControl

La manera que tenemos de añadir publicidad es a través de un control llamado AdControl. Cuando lo añadimos simplemente debemos indicarle el ApplicationId que obtendremos al registrarnos en los servicios de publicidad, y el AdUnitId que identifica al anuncio.

Nota: Para poder hacer pruebas podemos indicar “test_client” como ApplicationId. Y existen también valores por defecto para el AdUnitId para los diferentes formatos del anuncio.

<AdControl AdUnitId="test_client" ApplicationId="Image480_80"/>

ErrorOccurred

Existe un evento en el AdControl llamado ErrorOcurred que se llama cuando ha ocurrido un error en el AdControl, por ejemplo si no hay anuncios disponibles. Es importante tener en cuenta este evento por si queremos actuar cuando un anuncio no se cargue.

Añadir una aplicación al pubCenter

Una vez nos hemos registramos en el pubCenter accedemos al Dashboard y le damos a Monetizar una nueva App.

En esta pantalla podemos añadir anuncios para una aplicación. Lo primero que tenemos que hacer es indicar el tipo de dispositivo y el nombre de la aplicación para poder identificarla.

pubCenter

A continuación añadimos un nuevo anuncio. Debemos indicarle un nombre, para poder identificarlo fácilmente. Además un tamaño y la categoría del anuncio que queremos. Para una aplicación podemos añadir más de un anuncio.

Una vez hemos hecho eso nos aparece la información del anuncio con el ApplicationId y el AdUnitId que debemos sustituir en nuestro AdControl.

ad

Google AdMod

Otra alternativa es utilizar el servicio de Google, Google AdMod. Una vez que nos hemos registrado le damos a Monetizar y podremos añadir una nueva aplicación.

En este caso no podemos monetizar una aplicación de Windows 8.

admod

El segundo paso es especificar qué tipo de banner queremos. Podemos configurar la frecuencia de actualización el estilo y al igual que antes, podemos indicar un nombre para identificarlo.

admod-banner

Por último te indica cómo utilizar el AdMod en Windows Phone 8. Simplemente te descargas la dll, la añades al proyecto y ya dispones de los controles necesarios.

AdDuplex

Una de las alternativas más interesantes es el AdDuplex: en tu aplicación anuncian otras aplicaciones y en las otras aplicaciones se anuncia la tuya. Es una buena estrategia para conseguir descargas.

Una vez nos registramos accedemos y añadimos una nueva aplicación. Nos deja elegir entre Windows Phone 7 o superior, Windows Phone 8 o superior y Windows 8.

Simplemente añadimos el nombre para identificarla y la URL de la aplicación publicada en la tienda. Si la aplicación aún no está publicada debemos dejar este campo en blanco.

adduplex

Una vez registramos la app debemos crear el banner a nuestro gusto. Disponibles de 4 líneas para texto y una imagen. La imagen solo está disponible si se utiliza la versión 2 del SDK.

createad

Además nos indica cómo añadir los anuncios en la aplicación. Simplemente debemos descargarnos el paquete NuGet de AdDuplex para Windows Phone (o Windows 8).

Añadimos el namespace:

xmlns:adduplex="clr-namespace:AdDuplex;assembly=AdDuplex.WindowsPhone"

Y el control con el anuncio:

<adduplex:AdControl x:Name="adDuplexAd" AppId="{APPID}"/>

AdRotator

Otra de las alternativas es utilizar AdRotator, que alterna entre varios servicios de anuncios. De este modo si un servicio no tiene un anuncio disponible para servir nos cambia a otro distinto.

Tenemos que registrar nuestra aplicación en los diferentes servicios de anuncios que queremos activar en Adrotator.

Lo primero que debemos hacer es instalar el paquete NuGet de AdRotator, disponible para Windows 8 y Windows Phone. Esto nos instalará la versión 1, ya que la versión 2 está en beta. Podemos instalar la versión 2 desde NuGet indicando que nos descargue las versiones PreRelease.

Simplemente disponemos de un control de AdRotator que podemos añadir a nuestras vistas.

El siguiente paso es configurar los servicios de publicidad que queremos que aparezcan en nuestra aplicación. En este fichero de configuración podemos editar con qué probabilidad queremos que se sirvan anuncios de cada servicio y además lo podemos hacer por países o regiones. De tal forma que podemos hacer que el pubCenter tenga un 80% en Estados Unidos y un 15% en España, por ejemplo.

El fichero lo podemos tener en una web y poder editarlo cuando queramos para cambiar estos valores de forma remota sin necesidad de volver a republicar la aplicación.

El fichero de configuración es un XML que tiene el siguiente aspecto:

<?xml version="1.0" encoding="utf-8"?>
<AdSettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <CultureDescriptors>
    <AdCultureDescriptor CultureName="en-US">
      <Probabilities Probability="10" AdType="Smaato" AppID="65754722" SecondaryID="923855310"/>
      <Probabilities Probability="10" AdType="InnerActive" AppID="DavideCleopadre_ClockAlarmNightLight_WP7" />
      <Probabilities Probability="40" AdType="PubCenter" AppID="test_client" SecondaryID="Image480_80" />
      <Probabilities Probability="10" AdType="AdDuplex" AppID="2859"/>
      <Probabilities Probability="30" AdType="DefaultHouseAd" AppID="http://adrotator.apphb.com/SampleRemoteHouseAd.xaml"/>
    </AdCultureDescriptor>
    <AdCultureDescriptor CultureName="en-GB">
      <Probabilities Probability="40" AdType="Smaato" AppID="65754722" SecondaryID="923855310"/>
      <Probabilities Probability="10" AdType="InnerActive" AppID="DavideCleopadre_ClockAlarmNightLight_WP7" />
      <Probabilities Probability="10" AdType="AdDuplex" AppID="2859"/>
      <Probabilities Probability="40" AdType="PubCenter" AppID="test_client" SecondaryID="Image480_80" />
      <Probabilities AdType="DefaultHouseAd" AppID="http://adrotator.apphb.com/SampleRemoteHouseAd.xaml"/>
    </AdCultureDescriptor>
    <AdCultureDescriptor CultureName="de-DE">
      <Probabilities Probability="33" AdType="Smaato" AppID="65754722" SecondaryID="923855310"/>
      <Probabilities Probability="33" AdType="PubCenter" AppID="test_client" SecondaryID="Image480_80" />
      <Probabilities Probability="33" AdType="AdDuplex" AppID="2859"/>
      <Probabilities AdType="DefaultHouseAd" AppID="http://adrotator.apphb.com/SampleRemoteHouseAd.xaml"/>
    </AdCultureDescriptor>
        <AdCultureDescriptor CultureName="default">
      <Probabilities Probability="25" AdType="Smaato" AppID="65754722" SecondaryID="923855310"/>
      <Probabilities Probability="25" AdType="InnerActive" AppID="DavideCleopadre_ClockAlarmNightLight_WP7" />
      <Probabilities Probability="25" AdType="PubCenter" AppID="test_client" SecondaryID="Image480_80" />
      <Probabilities Probability="25" AdType="AdDuplex" AppID="2859"/>
      <Probabilities AdType="DefaultHouseAd" AppID="http://adrotator.apphb.com/SampleRemoteHouseAd.xaml"/>
    </AdCultureDescriptor>
    </CultureDescriptors>
</AdSettings>

Cuando instalamos el paquete NuGet de AdRotator nos crea un fichero de configuración por defecto. Como vemos nos aparecen los diferentes servicios con los datos que necesita da uno de ellos como el ApplicationId o el AddUnitId.

Aquí tenéis más información sobre cómo configurar el AdRotator.

Para añadir el fichero de configuración debemos añadir la ruta al fichero en el campo DefaultSettingsFileUri. Además también podemos indicarle uno remoto como hemos dicho antes.

<adRotator:AdRotatorControl x:Name="AdRotator"
AdHeight="80" AdWidth="480" 
DefaultSettingsFileUri="defaultAdSettings.xml"/>

Por último si utilizamos la versión 1 de AdRotator para mostrar el control debemos llamar al método Invalidate(). Así que cuando la página se ha cargado llamamos al método.

public MainPage()
{
    InitializeComponent();
    Loaded += MainPage_Loaded;
}

void MainPage_Loaded(object sender, RoutedEventArgs e)
{
AdRotator.Invalidate();
}

Sin embargo en la versión 2 basta con añadir el atributo AutoStart a true. Y ya está, nuestro AdRotator funcionando!

Servicios soportados por AdRotator

Resumen

Estos son los principales servidores de publicidad para nuestras Apps. Quizá la mejor idea sería poder combinarlas; primero sacamos la aplicación con AdDuplex para conseguir descargas y más tarde añadimos anuncios del pubCenter u otro servicio.

Muchas veces los servidores de anuncios no tienen anuncios para servir, por tanto AdRotator es una buena opción para cambiar entre los diferentes servicios.

Un saludo, y nos vemos en el siguiente post!

Sergio Gallardo Sales tw  link

257 thoughts on “Ads in Apps

  1. Pingback: Free Piano
  2. Pingback: cheap fifa coins
  3. Pingback: gw2 gold
  4. Pingback: Cheap Jordans
  5. Pingback: cheap jordans
  6. Pingback: asics gt 2
  7. Pingback: asic kayano
  8. Pingback: asics kinsei 4
  9. Pingback: asics pronation
  10. Pingback: womens asics
  11. Pingback: asics cumulus 14
  12. Pingback: asics noosa tri 8
  13. Pingback: asics volleyball
  14. Pingback: asics 33
  15. Pingback: asics uk
  16. Pingback: asics neon shoes
  17. Pingback: asics gel 2000
  18. Pingback: asic tigers
  19. Pingback: asics shoes online
  20. Pingback: bitcoin asic
  21. Pingback: asic running shoes
  22. Pingback: asics uk
  23. Pingback: asics 2000
  24. Pingback: asics usa
  25. Pingback: babyliss pro
  26. Pingback: asic gel
  27. Pingback: asics court shoes
  28. Pingback: asic bitcoin
  29. Pingback: asics gel neo33
  30. Pingback: asics gel blade
  31. Pingback: asics france
  32. Pingback: asics noosa tri 8
  33. Pingback: asics cumulus 14
  34. Pingback: asic bitcoin
  35. Pingback: mens asics gel
  36. Pingback: asics japan
  37. Pingback: asic gel kayano
  38. Pingback: asics sale
  39. Pingback: asics japan
  40. Pingback: asics gel lyte 2
  41. Pingback: asics wiki
  42. Pingback: asics new york
  43. Pingback: asics resolution
  44. Pingback: asics duomax
  45. Pingback: asics gt 2170 mens
  46. Pingback: asics gel pulse
  47. Pingback: asics volleyball
  48. Pingback: OnTsSSAr
  49. Pingback: scarpe new balance
  50. Pingback: merrill shoes
  51. Pingback: new balance 890v3
  52. Pingback: asics gel kinsei 5
  53. Pingback: asics shoes online
  54. Pingback: black new balance
  55. Pingback: new balance skor
  56. Pingback: asics usa
  57. Pingback: new balance canada
  58. Pingback: new balance wl574
  59. Pingback: new balance 1080v4
  60. Pingback: asic shoes
  61. Pingback: new balance 850
  62. Pingback: new balance 608
  63. Pingback: new balance u410
  64. Pingback: asics australia
  65. Pingback: womens asics
  66. Pingback: asics gt2000
  67. Pingback: new balances
  68. Pingback: new balance usa
  69. Pingback: new balance 890v3
  70. Pingback: new balance 1080
  71. Pingback: new balance sko
  72. Pingback: asics uk
  73. Pingback: asics onitsuka
  74. Pingback: asics kinsei 4
  75. Pingback: new balance sko
  76. Pingback: asics canada
  77. Pingback: new balance 620
  78. Pingback: buy shoes
  79. Pingback: new balance enfant
  80. Pingback: scarpe new balance
  81. Pingback: new balance 860v4
  82. Pingback: new balance 710
  83. Pingback: new balance uk
  84. Pingback: new balance skor
  85. Pingback: new balance schuhe
  86. Pingback: asics gel kinsei
  87. Pingback: 574 new balance
  88. Pingback: clearance shoes
  89. Pingback: shoe shop
  90. Pingback: 574 new balance
  91. Pingback: best shoes
  92. Pingback: asics gt 2170
  93. Pingback: asics gel lyte 33
  94. Pingback: new balance 880
  95. Pingback: new balance 565
  96. Pingback: new balance wiki
  97. Pingback: new balance 890
  98. Pingback: new balance 430
  99. Pingback: asic shoes
  100. Pingback: new balance black
  101. Pingback: asics gel rocket
  102. Pingback: asics uk
  103. Pingback: new balances
  104. Pingback: kids shoes online
  105. Pingback: paul green sneaker
  106. Pingback: oasics
  107. Pingback: asics 2170
  108. Pingback: new balance 1080v4
  109. Pingback: new balance 880
  110. Pingback: shoes sale
  111. Pingback: j crew new balance
  112. Pingback: new balance m574
  113. Pingback: asics mexico
  114. Pingback: new balance 430
  115. Pingback: asics kinsei 4
  116. Pingback: gel lyte 3
  117. Pingback: new balance women
  118. Pingback: ash sneakers
  119. Pingback: basket new balance
  120. Pingback: new balance 928
  121. Pingback: asics gel beyond
  122. Pingback: nimbus asics
  123. Pingback: new balance wiki
  124. Pingback: iconic shoes
  125. Pingback: new balance enfant
  126. Pingback: new balance 850
  127. Pingback: new balance coupon
  128. Pingback: black sneakers
  129. Pingback: new balance 1080
  130. Pingback: asics noosa tri 8
  131. Pingback: j crew new balance
  132. Pingback: cheap asics
  133. Pingback: asics outlet
  134. Pingback: new balance 997
  135. Pingback: asics sneaker
  136. Pingback: black new balance
  137. Pingback: new balance skor
  138. Pingback: new balance 530
  139. Pingback: new balance 991
  140. Pingback: asics volleyball
  141. Pingback: joes new balance
  142. Pingback: chanel
  143. Pingback: new balance 670
  144. Pingback: new balance 710
  145. Pingback: asic australia
  146. Pingback: new balance 850
  147. Pingback: asics women
  148. Pingback: new balance sko
  149. Pingback: new balance 880
  150. Pingback: asics aaron
  151. Pingback: new balance 860v4
  152. Pingback: new balance schuhe
  153. Pingback: shoes online india
  154. Pingback: asics gt 2170
  155. Pingback: new balance 670
  156. Pingback: new balance 860v4
  157. Pingback: new balance 860v4
  158. Pingback: good running shoes
  159. Pingback: scarpe new balance
  160. Pingback: shoes sale
  161. Pingback: new balance 710
  162. Pingback: new balance 1080v4
  163. Pingback: asics gel kinsei 5
  164. Pingback: asics volleyball
  165. Pingback: new balance kids

Leave a Reply