adjust-icon

Cordova SDK integration guide

The Adjust Cordova SDK enables you to measure attribution, events, and much more in your Cordova app. Follow the steps in this guide to set up your app to work with the Adjust SDK. You can also check out the example apps on GitHub.

1. Add the SDK to your project

The Adjust Cordova SDK is available as a plugin on npm. To add it to your project,

Cordova plugin

To add the Adjust Cordova SDK to your Cordova plugin, run the following command:

Terminal window
> cordova plugin add com.adjust.sdk
Fetching plugin "com.adjust.sdk" via npm
Installing "com.adjust.sdk" for android
Installing "com.adjust.sdk" for ios

Ionic

If you use Ionic to build your app, add the SDK from the awesome-cordova-plugins repository by running the following command:

Terminal window
> npm install @awesome-cordova-plugins/adjust --save
> ionic cordova plugin add com.adjust.sdk

2. Set up Android devices

Add Google Play Services

Apps that target the Google Play Store must use the Google Advertising ID (gps_adid) to identify devices. To do this, add the following to your plugin.xml file.

plugin.xml
<framework src="com.google.android.gms:play-services-ads-identifier:18.0.1" />

Add permissions

The Adjust SDK requires the following permissions. Add them to your plugin.xml file if they’re not already present:

plugin.xml
<config-file target="AndroidManifest.xml" parent="/manifest/application">
<receiver
android:name="com.adjust.sdk.AdjustReferrerReceiver"
android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
</config-file>

The Adjust SDK includes the com.google.android.gms.AD_ID permission by default in version 4.32.0 and above. You can remove it by adding a remove directive if need to make your app COPPA-compliant or if you don’t target the Google Play Store.

plugin.xml
<config-file target="AndroidManifest.xml" parent="/manifest">
<uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove" />
</config>

Set up Proguard

If you are using Proguard, add the following rules to your Proguard file:

proguard.pro
-keep public class com.adjust.sdk.** { *; }
-keep class com.google.android.gms.common.ConnectionResult {
int SUCCESS;
}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient {
com.google.android.gms.ads.identifier.AdvertisingIdClient$Info getAdvertisingIdInfo(android.content.Context);
}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient$Info {
java.lang.String getId();
boolean isLimitAdTrackingEnabled();
}
-keep public class com.android.installreferrer.** { *; }

If you aren’t publishing your app in the Google Play Store, add the following rule to your Proguard file.

proguard.pro
-keep public class com.adjust.sdk.** { *; }

Set up install referrer

The install referrer is a unique identifier which you can use to attribute an app install to a source. The Adjust SDK requires this information to perform attribution. There are three methods you can use to gather this information:

Google Play Referrer API

To support the Google Play Referrer API:

  1. Configure the Google Maven repository in your build.gradle file:

    build.gradle
    allprojects {
    repositories {
    jcenter()
    maven {
    url "https://maven.google.com"
    }
    }
    }
  2. Add the following in your plugin.xml file:

    plugin.xml
    <framework src="com.android.installreferrer:installreferrer:2.2" />
  3. If you’re using Proguard, make sure you have added the following setting in your Proguard file:

    proguard.pro
    -keep public class com.android.installreferrer.** { *; }

Huawei Referrer API

As of v4.21.1, the Adjust SDK supports install tracking on Huawei devices using Huawei App Gallery v10.4 and later. You don’t need to make any changes to start using the Huawei Referrer API.

Meta referrer integration

The Adjust SDK supports the Meta Install Referrer in v4.37.1 and above. To enable this feature:

  1. Find your Meta app ID in your App Dashboard. See Meta’s App Dashboard documentation for more information.

  2. Assign your App ID to the fbAppId property on your AdjustConfig instance.

    index.js
    var adjustConfig = new AdjustConfig(
    "{YourAppToken}",
    AdjustConfig.EnvironmentSandbox,
    );
    adjustConfig.fbAppId = "<FB_APP_ID_STRING>";
    Adjust.create(adjustConfig);

3. Add iOS frameworks

The Adjust SDK is able to get extra information when you include certain iOS frameworks in your app. These frameworks enable certain SDK features, but they’re not mandatory for the SDK to work normally.

Add the desired frameworks to your plugin.xml file to enable them.

plugin.xml
<framework src="AdSupport.framework" weak="true" />
<framework src="StoreKit.framework" weak="true" />
<framework src="AdServices.framework" weak="true" />
<framework src="AppTrackingTransparency.framework" weak="true" />

4. Initialize the Adjust SDK

Make sure you initialize the Adjust SDK as soon as possible in your Cordova app. To do this, instantiate an AdjustConfig object with the following information:

  • appToken: Your Adjust app token.
  • environment: The environment your app is running in. Set this to AdjustConfig.ENVIRONMENT_SANDBOX to test your app locally.
index.js
var adjustConfig = new AdjustConfig(
"{YourAppToken}",
AdjustConfig.EnvironmentSandbox,
);
Adjust.create(adjustConfig);

5. Build your app

Well done! You should now be able to build and run your Cordova app. Enable logging to check for any issues. Check your logs to see the Install tracked message.

You are ready to start attributing your users with the Adjust SDK.

6. Add the Adjust SDK signature

You can use the Adjust SDK signature to sign all communications sent by the Adjust SDK. This enables Adjust’s servers to detect and reject any install activity that’s not legitimate.

To get started with the Adjust SDK signature, contact your Technical Account Manager or support@adjust.com.

7. Test your integration

The Adjust SDK provides tools for testing and troubleshooting issues with your integration. To test your setup:

  • Set your environment to Sandbox.
  • Add a sandbox filter to your Adjust dashboard results.
  • Set your log level to verbose.

Test Google Play Services integration

To test that the Adjust SDK can receive a device’s Google Advertising ID, set the log level to verbose and the environment to Sandbox. Start your app and measure a session or an event. The SDK logs the gps_adid (Google Play Services Advertiser ID) parameter if it has read the advertising ID.

If you’re experiencing issues retrieving the Google Advertising ID, open an issue in the SDK GitHub repository or contact support@adjust.com.