⌨️SDK integration

Requisites

This documentation has been written for Unity 2020 or higher. It is recommended to use these versions when integrating the SDK.

Import Unity package

In first place, it is needed to download the Unity package from the following link: https://cdn.resources.wortise.com/sdk/unity/Wortise-Unity-1.5.0.unitypackage

Once downloaded, double click on the file to import it into the project.

Setup project

Once the package has been imported, the project needs to be properly configured.

Open the Player settings (Edit > Project Settings > Player), select the tab with the Android icon, expand the Publishing Settings panel and check the Custom Main Gradle Template and Custom Gradle Settings Template options.

After following this step, open the settingsTemplate.gradle file located at Assets/Plugins/Android and add the following Maven repositories inside the repositories block located at dependencyResolutionManagement.

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

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

Finally, on the mainTemplate.gradle file, add the following line inside the dependencies block:

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

Setup Manifest

To improve the eCPM of Google's Open Bidding partners, it is needed to add a <meta-data> element in the AndroidManifest.xml file, inside the <application> block.

This value can be found in our dashboard, inside the app details, under the name 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>

Request permissions (Optional)

The next step is to request the permissions in any place of the app where you believe will be more convenient. These permissions are needed to collect device data so we can display the best ads based on their real location and various attributes. This step is recommended but completely optional.

First, add the following permissions in the AndroidManifest.xml file:

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

Also, if your app targets Android 10 or higher (for example, if targetSdkVersion is 29 or higher), it is needed to add the following additional permission:

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

After adding the ACCESS_BACKGROUND_LOCATIONpermission, Google Play will force to fill the location permissions declaration to publish the app.

The recommended option is to obtain Google's approval to be able to use this permission.

In case it cannot be obtained, you can temporarily declare that the app does not comply with Google Play policies, to be able to use the permission until March 29th. When this date is reached, you must publish an app update without the permission, to comply with Google Play policies and avoid any kind of inconvenience.

And finally, request all the permissions so the users can grant them, just as specified in Unity's official documentation.

It is very recommended to request the user consent to be able to show personalised ads. This will allow to display content of more interest and generate higher revenues.

You can consult the following section to implement this request and obtain the user consent: User consent

Initialize SDK

To initialize the SDK, it is needed to add the following lines in the Start() method of the first project Scene. Also, we recommend to implement the OnInitialized event to request the consent once the initialization has finished:

void Start() {
    ...
    
    WortiseSdk.OnInitialized += () => {
        WortiseConsentManager.RequestIfRequired();
    };
    
    WortiseSdk.Initialize("your app key");
}

Test mode

To verify the integration, the SDK provides a test mode that allows the app to always receive ads.

Beside the option that is available in our dashboard, you can programatically enable this test mode, from the SDK itself, by using the following code:

WortiseAdSettings.IsTestEnabled = true;

Share user data

If the application knows some user data (age, gender, etc.), that information can be shared with the SDK so we can show ads of more interests, and therefore obtain a higher eCPM.

To share this information, it is needed to use the methods provided by the WortiseDataManager class, just as shown below:

// Share age
WortiseDataManager.Age = 20;

// Share gender
WortiseDataManager.Gender = WortiseUserGender.MALE;

// Share email addresses
WortiseDataManager.Emails = new List<string> {
    "email1@gmail.com",
    "email2@gmail.com"
};

WortiseDataManager.AddEmail("email3@gmail.com");

Last updated