Saltar a: navegación, buscar

SDKs:SPS:Android:index


  1. CÓMO AGREGAR LA LIBRERÍA SPSLIB EN ANDROID

    1. ÍNDICE

    • 1.-** Introducción.
    • 2.-** Versiones de Android Soportadas.
    • 3.-** Espacios.
    • 4.-** Instalación de la librería.
    • 5.-** Lanzamiento de la librería.

    1. 1.- INTRODUCCIÓN.

La librería **SpsLib** se encarga de servir y controlar los anuncios a mostrar y la forma de mostrarlos.

    • SpsLib** realiza una petición al **Servidor RTB** de **Mobeleader** en busca de anuncios que mostrar, y éste devuelve el anuncio más adecuado en función de dicha petición.

La librería se ejecuta en segundo plano, por lo que no influye en los procesos que se estén ejecutando en la aplicación del cliente.


    1. 2.- VERSIONES DE ANDROID SOPORTADAS.

Esta librería soporta todas las versiones de **Android** superiores a la **2.3** o ***GINGERBREAD***.


    1. 3.- ESPACIOS.

El **espacio** es el elemento que gestiona las características del anuncio a mostrar en su aplicación, tales como el tamaño y posición en pantalla, frecuencia de impresión, tipo de anuncio, etc.

En un mismo ***Activity*** (o ***Fragment***) de la aplicación se puede establecer uno o varios espacios, en función de lo que desee el desarrollador. Un espacio sólo puede mostrar un anuncio a la vez.

Para que la librería **SpsLib** pueda mostrar un anuncio habrá que crear y configurar previamente el espacio con las características deseadas.


      1. 3.1.- Creación de un espacio.

Este paso se realiza desde el **Panel de Mobeleader**. Podemos hacerlo bien desde la sección [Mis Aplicaciones](http://panel.mobeleader.com/index.php?sec=6) o bien desde la sección [Mis Espacios](http://panel.mobeleader.com/index.php?sec=34).

Recuerde que un espacio está asignado a una aplicación, por lo que ésta ha de haber sido creada previamente en el panel.

Si se encuentra en la sección [Mis Aplicaciones](http://panel.mobeleader.com/index.php?sec=6), elija aquella aplicación de la lista a la que quiera agregar un espacio. En la columna **RTB** pulse el icono ![](plus.png) de [**"Crear Espacio"**](http://panel.mobeleader.com/index.php?sec=35).

![](/ficheros_subidos/librerias/imagenes/sps/anadir_espacio_apps.png)

Si se encuentra en la sección [Mis Espacios](http://panel.mobeleader.com/index.php?sec=34), pulse directamente el botón [**"Crear Espacio"**](http://panel.mobeleader.com/index.php?sec=35).

![](/ficheros_subidos/librerias/imagenes/sps/boton_crear_espacio.png)

Una vez en la sección [Crear Espacio](http://panel.mobeleader.com/index.php?sec=35), rellene los campos del formulario y pulse el botón **"Crear el espacio"**.

![](/ficheros_subidos/librerias/imagenes/sps/formu_crear_espacio.png)


      1. 3.2.- Configuración del espacio.
        1. 3.2.1.- Configuración RTB del espacio.

Una vez creado el espacio, ha de configurarlo de cara a su comportamiento en nuestro **Servidor RTB**, que será el encargado de proveer los anuncios. Desde la sección [Mis Aplicaciones](http://panel.mobeleader.com/index.php?sec=6) pulse el botón **"Espacios RTB"** en la columna **RTB** de la aplicación a la que pertenece el espacio.

![](/ficheros_subidos/librerias/imagenes/sps/boton_espacios_RTB.png)

Rellene los campos del formulario y pulse **"Añadir Configuración"**.

![](/ficheros_subidos/librerias/imagenes/sps/formu_conf_RTB.png)

A continuación aparecerá el espacio con su configuración en el **"Listado de espacios configurados"**.

        1. 3.2.2.- Configuración de los *cappings*.

Si desea limitar el comportamiento del espacio ha de asignarle las limitaciones o ***cappings*** correspondientes. Esta configuración no es obligatoria.

Desde la sección [Mis Espacios](http://panel.mobeleader.com/index.php?sec=34) pulse **"Gestionar Cappigs"**.

![](/ficheros_subidos/librerias/imagenes/sps/boton_gest_cappings.png)

Seleccione las características del ***capping*** a aplicar y pulse el botón **"Añadir capping"**.

![](/ficheros_subidos/librerias/imagenes/sps/formu_gest_cappings.png)

A continuación aparecerá el ***capping*** creado en la lista **"Cappings aplicados"**. Puede eliminar un ***capping*** si lo desea pulsando el botón **"Quitar capping"**.

Si los cappings están configurados correctamente pulse el botón **"Configurar estos cappings"** para que el sistema los reconozca.

![](/ficheros_subidos/librerias/imagenes/sps/config_cappings.png)


    1. 4.- INSTALACION DE LA LIBRERIA.

    • Mobeleader** dispone de un repositorio ***maven*** para que sus librerías puedan ser utilizadas en ***Android Studio***. Para poder usar la librería **SpsLib** es necesario realizar varios cambios, tanto en el archivo ***build.gradle*** como en el ***AndroidManifest.xml*** de su aplicación.

      1. 4.1.- Cambios en el archivo *build.gradle*.

En el apartado ***repositories*** deberá añadir:

![](/ficheros_subidos/librerias/imagenes/sps/repository.png)

La librería **SpsLib** utiliza dos librerías auxiliares, **RegisterLib** y **UtilsLib**. Por tanto, para utilizar la librería **SpsLib** en su aplicación, en el apartado ***dependencies*** deberá añadir:

![](/ficheros_subidos/librerias/imagenes/sps/dependencies.png)


      1. 4.2.- Cambios en el archivo *AndroidManifest.xml*.

Es necesario añadir el siguiente permiso:

![](/ficheros_subidos/librerias/imagenes/sps/perms_obliig.png)

Se recomienda añadir los siguientes permisos para obtener el mayor rendimiento de la librería:

![](/ficheros_subidos/librerias/imagenes/sps/perms_recom.png)


      1. 4.3.- Cambios en el *Proguard*.

En caso de que esté utilizando el ***Proguard*** (variable ***minifyEnabled*** a ***TRUE*** en el ***build.gradle***), será necesario añadir en el fichero del ***Proguard*** utilizado (***proguard-rules.pro*** por defecto) la siguiente regla:

![](/ficheros_subidos/librerias/imagenes/sps/proguard.png)


    1. 5.- LANZAMIENTO DE LA LIBRERIA.

Lo primero que debe hacer es elegir el ***Activity*** (o ***Fragment***) en el que quiera mostrar la publicidad. Recuerde que puede hacerlo en tantos ***Activities*** o ***Fragments*** como desee. Una vez seleccionado ha de importar el paquete **com.mobeleader.sps**:

![](/ficheros_subidos/librerias/imagenes/sps/import_sps.png)

Una vez importado el paquete, se procederá al lanzamiento de la librería. La librería **SpsLib** se puede lanzar de varias maneras. En este documento se explicarán tres formas de hacerlo.


      1. 5.1.- Lanzamiento básico.

El lanzamiento básico consiste en mostrar automáticamente un anuncio ***interstitial*** cada vez que se entre en el ***Activity*** o ***Fragment*** seleccionado.

Para ello, en el **onCreate** (si es un ***Activity***) o en el **onCreateView** (si es un ***Fragment***) añada el siguiente código:

![](/ficheros_subidos/librerias/imagenes/sps/lanz_difer1.png)

    • setAppHash(“*appHash*”)** y **setSpaceHash(“*spaceHash*”)** son campos obligatorios.

En el campo ***appHash*** ha de introducir el **código hash** de su aplicación, generado al registrar su aplicación en el **Panel de Mobeleader**. Lo puede obtener en la sección [Mis Aplicaciones](http://panel.mobeleader.com/index.php?sec=6), pulsando el icono de la columna **"Hash"** de su aplicación.

![](/ficheros_subidos/librerias/imagenes/sps/app_hash.png)

En el campo ***spaceHash*** ha de introducir el **código hash** del espacio que vaya a gestionar la publicidad, generado al crear dicho espacio en el **Panel de Mobeleader**. Lo puede obtener en la sección [Mis Espacios](http://panel.mobeleader.com/index.php?sec=34), pulsando el icono de la columna **"Hash"** de su espacio.

![](/ficheros_subidos/librerias/imagenes/sps/space_hash.png)


      1. 5.2.- Lanzamiento diferido.

Puede lanzar la librería en un momento determinado. Lo que debe hacer es preparar la librería para su lanzamiento y ejecutarla en el momento que desee. A continuación se muestra un ejemplo utilizando el ***listener*** **onAdReadyToShow**:

![](/ficheros_subidos/librerias/imagenes/sps/lanz_basico1.png)

En el ejemplo se he declarado la clase como **local**. En este caso es necesario declararla como **final** para poder implementar el método **loadSps** dentro del ***listener***. No será necesario si declaramos la clase **SpsView** como atributo global del ***Activity*** o ***Fragment***.


      1. 5.3.- Lanzamiento de un ***banner***.

Si lo que desea es mostrar un ***banner*** en una posición y con unas dimensiones determinadas ha de utilizar la clase **SpsView** en su ***Activity*** o ***Fragment***. **SpsView** es el ***layout*** o vista en el que se mostrará el anuncio. Las características del ***layout*** se establecen mediante el archivo ***XML***.

Añada en el ***XML*** del ***layout*** del ***Activity*** o ***Fragment*** la vista ***SpsView** (en el ejemplo se añade dentro de un **LinearLayout**):

![](/ficheros_subidos/librerias/imagenes/sps/sps_view_xml.png)

    • sps:spsAppHash=“appHash”** y **sps:spsAppSpaceHash=“spaceHash”** son campos obligatorios, y funcionan tal como se explica en el lanzamiento básico.
    • sps:spsSize=“BANNER"** y **sps:spsLoadSps=“true"** también son campos obligatorios.

El campo **spsSize** determina el tipo de ***banner*** a mostrar, esto es, las dimensiones que ocupará dentro de la pantalla. A continuación se muestra una lista con los tipos de ***banner*** que ofrece **Mobeleader**:

- **"IMAGE_SMALL_BANNER"** (120 x 20). - **"IMAGE_SMALL_HIGH_BANNER"** (120 x 30). - **"IMAGE_MEDIUM_BANNER"** (168 x 28). - **"IMAGE_MEDIUM_HIGH_BANNER"** (168 x 42). - **"IMAGE_LARGE_BANNER"** (216 x 36). - **"IMAGE_LARGE_HIGH_BANNER"** (216 x 54). - **"HIGH_BANNER"** (300 x 75). - **"MOBILE_POP_UP"** (300 x 250). - **"TABLET_FILM_STRIP"** (300 x 600). - **"BANNER"** (320 x 50). - **"SQUARE_BANNER"** (320 x 320). - **"MOBILE_LARGE_BANNER"** (320 x 300). - **"MOBILE_LARGE_POP_UP"** (320 x 350). - **"TABLET_LARGE_BANNER"** (320 x 480). - **"TABLET_BANNER"** (480 x 80). - **"TABLET_POP_UP"** (550 x 480).

    • "BANNER"** es el **spsSize** por defecto.

El campo **spsLoadSps** determina si la librería se lanza automáticamente al cargar el ***layout*** **SpsView**.

Si **spsLoadSps** es ***TRUE*** la librería se lanzará automáticamente sin necesidad de instanciar la clase.

Si **spsLoadSps** es ***FALSE*** la librería podrá ser lanzada en el momento que se desee. Se hará de la siguiente forma dentro del ***Activity*** o ***Fragment***:

![](/ficheros_subidos/librerias/imagenes/sps/lanz_banner.png)

En el ejemplo se está haciendo la llamada a **SpsView** dentro de un ***Fragment***. En caso de hacerlo dentro de un ***Activity*** se sustituirá **"tmp_view"** por **"this"**.


      1. 5.4.- Listeners.

La librería **SpsLib** está dotada de varios ***listeners***:

- **onActive**: notifica si la aplicación tiene **activada** la librería. - **onInactive**: notifica en caso de que la aplicación tenga **desactivada** la librería. - **onLibStart**: notifica cuando la librería ha empezado a comprobar los anuncios. - **onIsGoingToShowAd**: notifica cuando la librería ha cotejado si debe mostrar anuncio o no. En caso de que vaya a mostrar anuncio devuelve ***"true"*** en el argumento, ***"false"*** en caso contrario. - **onAdNotShow**: notifica cuando la librería no va a mostrar ningún anuncio. Si el motivo por el cual no devuleve un anuncio es un error de la librería, el listener devolvera un objeto ***JSON*** con los errores producidos. - **onAdShow**: notifica cuando la librería va a mostrar un anuncio. - **onAdReadyToShow**: notifica cuando la librería ya tiene elegido y preparado el anuncio a mostrar. Devuelve el tipo de anuncio que se va a mostrar, que podrá ser **"INTERSTITIAL"** o el tipo de ***banner*** (ej: **"HIGH_BANNER"**). - **onPresentScreenAd**: notifica cuando el anuncio está en pantalla. - **onActionShow**: notifica cuando el anuncio ha realizado la acción de visualizado. - **onActionUrlOpen**: notifica cuando el anuncio ha realizado la acción de abrir una URL. Devuelve como ***string*** la URL abierta en el argumento . - **onActionCloseButton**: notifica cuando el anuncio ha realizado la acción de pulsar sobre el **"botón cerrar"**. - **onAdClose**: notifica cuando el anuncio se ha cerrado. - **onLibClose**: notifica cuando la librería se ha cerrado. - **onError**: notifica cuando la librería ha tenido algún error. Devuelve un ***string*** con la descripción del error producido.

Para acceder a los ***listeners***, la llamada a la librería **SpsLib** deberá realizarse de la siguiente forma (se pueden implementar tantos listeners como se quiera, no es necesario implementarlos todos):

![](/ficheros_subidos/librerias/imagenes/sps/listeners_1.png) ![](/ficheros_subidos/librerias/imagenes/sps/listeners_2.png)

La clase **SpsView** incorpora así mismo el método **setSpsListener**.