⌨️Integración del SDK

Configurar proyecto

Dependiendo del lenguaje que utilice el proyecto en los scripts Gradle, debes seguir los pasos de la pestaña correspondiente:

En primer lugar, es necesario añadir los siguientes repositorios Maven dentro del bloque repositories del fichero settings.gradle:

En los proyectos donde todavía se utilice una estructura antigua, el bloque repositories se encontrará en el fichero build.gradle ubicado a nivel de app.

repositories {
    maven { url 'https://maven.wortise.com/artifactory/public' }

    maven { url 'https://android-sdk.is.com/' }
    maven { url 'https://artifact.bytedance.com/repository/pangle' }
}

Una vez añadidos, se puede proceder a integrar el SDK . Para ello, hay que introducir la siguiente línea dentro del bloque dependencies del fichero build.gradle ubicado a nivel de app:

implementation 'com.wortise:android-sdk:1.5.1'

En caso de no tenerlo ya, es necesario activar la compatibilidad con Java 8 en el proyecto. Esto se puede lograr añadiendo estas líneas adicionales dentro del bloque android, también en el mismo fichero build.gradle:

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

Configurar Manifest

Para mejorar los eCPM de los partners Open Bidding de Google, es necesario agregar un elemento <meta-data> en el fichero AndroidManifest.xml, dentro del bloque <application>.

Este valor puede ser localizado en nuestro dashboard, dentro de los detalles de cada aplicación, bajo el nombre Google App ID.

<manifest>
    ...
    <application>
        ...
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

Solicitar permisos (Opcional)

El paso siguiente es solicitar los permisos en el lugar de la aplicación que creas mas conveniente. Estos permisos son necesarios para recopilar datos del dispositivo y así poder mostrar los mejores anuncios en base a su localización real y atributos varios. Este paso es recomendable pero completamente opcional.

En primer lugar, añade los siguientes permisos en el fichero AndroidManifest.xml:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

Además, si tu aplicación está dirigida a Android 10 o superior (por ejemplo, el valor de targetSdkVersion es 29 o mayor), es necesario añadir el siguiente permiso adicional:

<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />

Al añadir el permiso ACCESS_BACKGROUND_LOCATION, Google Play obliga a rellenar la declaración de permisos de ubicación para publicar la app.

La opción más recomendable es obtener la aprobación de Google para poder utilizar dicho permiso.

En caso de no poder obtenerla, puedes declarar temporalmente que la app no cumple actualmente con las políticas de Google Play, para poder utilizar el permiso hasta el próximo 29 de Marzo. Una vez alcanzada esta fecha, deberás publicar una actualización de la app sin el permiso, para cumplir con las políticas de Google Play y evitar cualquier tipo de inconveniente.

Y, por último, realiza la solicitud de los permisos para que los usuarios puedan otorgar su autorización. A continuación, puedes encontrar un ejemplo de cómo realizar este paso.

Ejemplo

Ejemplo de solicitud en el Activity principal:

private static final String[] PERMISSIONS = {
    Manifest.permission.ACCESS_FINE_LOCATION,
    Manifest.permission.ACCESS_COARSE_LOCATION,
    Manifest.permission.ACCESS_BACKGROUND_LOCATION
};

ActivityCompat.requestPermissions(this, PERMISSIONS, 100);

Solicitar consentimiento

Es muy recomendable solicitar consentimiento al usuario para poder mostrar anuncios personalizados. Esto permitirá mostrar contenido que resulte de mayor interés y generar ingresos superiores.

Puede consultar el siguiente apartado para implementar esta solicitud y obtener el consentimiento de los usuarios: Consentimiento del usuario

Inicializar SDK

Nuestra recomendación es inicializar el SDK en la clase Application de la app, aunque también se puede realizar en algún Activity principal.

Para ello, es necesario integrar el siguiente código en el método onCreate:

WortiseSdk.initialize(this, "tu app key");

Listener de inicialización

Existen dos maneras posibles para conocer cuando el SDK finaliza su inicialización:

Pasando un listener como último parámetro del método WortiseSdk.initialize

WortiseSdk.initialize(this, "tu app key", () -> {
    // Este listener será llamado cuando la inicialización finalice
    return Unit.INSTANCE;
});

Utilizando el método WortiseSdk.wait

WortiseSdk.wait(() -> {
    // Este listener será llamado cuando la inicialización finalice
    return Unit.INSTANCE;
});

Modo de prueba

Para verificar la integración, el SDK ofrece un modo de prueba (test mode) que permite que la app siempre reciba anuncios.

Además de la opción que hay disponible en nuestro dashboard, es posible activar este modo de prueba programáticamente, desde el propio SDK, utilizando el siguiente código:

AdSettings.setTestEnabled(true);

Compartir datos de los usuarios

Si la aplicación conoce algunos datos de los usuarios (edad, género, etc.), dicha información puede ser compartida con el SDK para que podamos mostrar anuncios de mayor interés, y así poder obtener un eCPM superior.

Para compartir esta información, es necesario hacer uso de los métodos que proporciona la clase DataManager, tal y como se muestra a continuación:

// Compartir la edad
DataManager.setAge(context, 20);

// Compartir el género
DataManager.setGender(context, UserGender.MALE);

// Compartir direcciones de email
DataManager.setEmails(
    context,
    Arrays.asList("email1@gmail.com", "email2@gmail.com")
);

DataManager.addEmail(context, "email3@gmail.com");

Última actualización