iOS Signature library integration

Adjust's SDK Signature library is designed to be a standalone plugin for the Adjust SDK. This means you don’t need to change any of your code or change how you use the Adjust SDK in your app. Once you install the plugin, all requests made by the Adjust SDK will continue to work as expected.

Before you begin

To integrate the Adjust Signature library into your iOS app, ensure the following:

  • The Adjust SDK version in use is 4.35.2 or greater.

Migrating from Signature v1 or v2 library

If you previously used Signature v1 or Signature v2, you first need to remove the previous version before integrating the Signature library. To do this:

  • If you previously integrated Signature v1, remove any code that calls to signature functions in your project.
  • If you previously integrated Signature v2, remove the Signature v2 library from your project.

Integration steps

Follow these steps to integrate the Signature library in your iOS project.

  1. Download the AdjustSigSdk-iOS-tvOS-Dynamic.xcframework.zip archive from GitHub.
  2. Unzip the archive and copy the AdjustSigSdk.xcframework into your project’s directory.
  3. In Xcode, select your project in the Project Navigator.
  4. Select your target on the left-hand side.
  5. Select the General tab and expand the Frameworks, Libraries and Embedded Content group.
  6. Select the + button at the bottom of the group.
  1. Select Add Other > Add Files and select the AdjustSigSdk.xcframework file from the project directory.
  1. Select the Embed & Sign option for the AdjustSigSdk.xcframework.

That’s it! The Signature library is now integrated into your project.

Test your app

You can verify you have integrated the Signature library into your app using the Adjust Testing Console.

Important:

You must ensure that the Adjust SDK is running in Sandbox mode.

To test your Signature library integration:

  1. Fully delete your app from the test device to ensure the install information is sent.

  2. Forget the device using the Testing Console to clear out all information relating to the device. You can also use the forget_device endpoint by passing your app token and the advertising ID you obtained from the Adjust Insights app (available on iOS and Android). You can use any of the following advertising IDs: adid, android_id, gps_adid, idfa, idfv, imei, oaid.

    The call looks like this:

    curl -X POST 'https://app.adjust.com/forget_device?app_token={yourAppToken}&id={adid}'
  3. Once you’ve cleared the device from the Testing Console, install the app on your test device and launch it to send install information to Adjust.

  4. Input the test device’s advertising ID into the Testing Console to fetch the install event information. Check the following:

    1. The SignatureVerificationResult field should show a value of Valid Signature
    2. The SignatureVersion field should show a value of 3

If these fields are present and contain the correct information, you have successfully integrated the Signature library. If the fields display any other values, review the integration steps again or contact support@adjust.com for further assistance.

That’s it! You’ve successfully integrated the Signature library into your app. Once two attribution windows have passed, you can enforce SDK signature validation to make sure that only signed requests are accepted by Adjust.