adjust unity documentation


If you are using older version, you will need to add support for deeplinking on your own inside of your Android Studio app project. Add an optional transaction ID to avoid tracking duplicated revenues. After that, track a session or an event in the app and check the list of parameters recorded in the verbose logs. mesh link property However, event partner parameters take precedence over session partner parameters. The default behaviour of the Adjust SDK is to pause sending network requests while the app is in the background. Instead, next to not marking your app as COPPA compliant anymore, you will need to explicitly re-enable third-party sharing in case you want to do that. You can also use an external device ID as a custom identifier for a device.

They can help you to recognize users across sessions and platforms. The session callback parameters' interface is similar to the one for event callback parameters. Within the callback you have access to a response data object specifically for the callback. When set on, Adjust automatically registers for SKAdNetwork attribution when the SDK is initialized. To remove a specific session partner parameter, pass the desired key to the removeSessionPartnerParameter method of the Adjust instance. If you want to learn more about cookies and why we use them, visit our cookie policy. This implementation intercepts the links only to let Adjust SDK know about them and SDK will perform everything which is needed to potentially reattribute your users via deeplinking. Also, in order to use this feature, additional setup is needed for your app in Adjust dashboard, so make sure to get in touch with our support team to make sure that everything is set up correctly before you start to use this feature. There are just a few steps involved in setting up the SDK Signature. We report this identifier in your event callbacks, letting you know which event was successfully tracked. For example, if you've registered the URL http://www.example.com/callback, then you would track an event like this: In this case we would track the event and send a request to: Adjust supports a variety of placeholders, for example {idfa} for iOS or {gps_adid} for Android, which can be used as parameter values. If later during the app lifetime you decide not to mark app as COPPA compliant anymore, third-party sharing will not be automatically re-enabled. LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, More information about this in Deeplinking overview chapter. Adjust offers two solutions: one which uses the system payload, and one which uses a default tracker. To set an external device ID, assign the identifier to the externalDeviceId property of your config instance. Remove it, but add the call to the Adjust broadcast receiver inside your own receiver, as described in the Android guide. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR You can edit the Adjust script parameters in the prefab Inspector menu to set up varios options. And, like already mentioned above - feel free to implement this same method in order to obtain deeplink which has opened your Android app. Log output messages describing the post build process are written to the Unity IDE console output window. If there you already have your own AndroidManifest.xml file (which should most probably be the case), you have the ability to select what actions will take place during the Android post-build process. You can track App Store and Play Store subscriptions and verify their validity with the Adjust SDK. You can add custom string identifiers to each event you want to track. This can be useful if you use these identifiers elsewhere and want to keep continuity. Note: As of version 4.19.2, Adjust Unity SDK is compatible with Unity 2017.1.1 and newer versions. You can also specify scheme based links as well as universal link domains associated with your iOS app. They will talk you through the best approach for your use case. If you haven't registered a callback for an event, we will not read these parameters. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are as essential for the working of basic functionalities of the website. You can remove a specific session callback parameter by passing the desired key to the removeSessionCallbackParameter method of the Adjust instance. Send product data from your Unity app to Amplitude in a few clicks. Session partner parameters merge with event partner parameters. the Software without restriction, including without limitation the rights to For information on how to integrate your app with the Adjust SDK, see the Unity Mediation API and impression events documentation: The following code details a sample integration: Unity Mediation (C#) API documentation for the ImpressionData object. Before a device receives an authorization request for access to app-related data, which is used for tracking the user or device, the returned status will be Not Determined. For example: if one add tap is worth one Euro cent, you can track the revenue event like this: When you set a currency token, Adjust will automatically convert the incoming revenues using the openexchange API into a reporting revenue of your choice. More more information about this in App-tracking authorisation wrapper chapter. Standard deeplinking is scenario in which click on a specific link opens your app which is already installed on user's device. We will then append these parameters to your callback URL. If you see the gps_adid parameter, our SDK has successfully read the Google advertising ID. This setting is located inside of your iOS app Info.plist file under NSUserTrackingUsageDescription key. If you are using Adjust tracker URLs with deeplinking enabled, it is possible to receive information about the deeplink URL and its content. There are couple of things which iOS post-build process does by default and which you don't have control of. Automatically tag existing events as conversions in Adjust. Using this example, in the resulting callback we would replace the placeholder with the IDFA/ Google Play Services ID of the current device. The NSUInteger value will be delivered via your callback method with the following meaning: To use this wrapper, you can call it as such: To get the current app tracking authorization status you can call getAppTrackingAuthorizationStatus method of Adjust class that will return one of the following possibilities: In cases where you are not using Adjust app-tracking authorization wrapper, Adjust SDK will not be able to know immediately upon answering the dialog what is the new value of app-tracking status. It's possible to send session parameters before the Adjust SDK has launched. If not configured or configured, but not being part of the attribution, these fields will have value null. If you want to track in-app purchases, please make sure to call trackEvent only if the purchase is finished and the item has been purchased. Please note that the dashboard displays a tracker URL (including http://app.adjust.com/). The Adjust SDK lets you receive device identifiers. Above mentioned Android deeplinking support implementation is why it was said that support for deeplinking was limited - on Android platform this mechanism will work only on UNITY_2019_2_OR_NEWER versions of Unity. RudderStacks open source Unity SDK allows you to integrate RudderStack with your Unity app to track event data and automatically send it to Adjust.With the RudderStack Unity SDK, you do not have to worry about having to learn, test, implement or deal with changes in a new API and multiple endpoints every time someone asks for a new integration. The Adjust post-build process makes sure that SDK will be able to capture the Google Play Store intent; you need take a few additional steps to add support for the new Google Play Referrer API. Instead, Adjust SDK internally relies on above mentioned Application.deepLinkActivated method to get information about deeplink directly from Unity API. Also, have in mind that by default Adjust dashboard is showing production traffic of your app, so in case you want to see traffic you generated while testing in sandbox mode, make sure to switch to sandbox traffic view within dashboard. Note: You can chose to initialize Adjust SDK in two different ways: If you decide to proceed with initialization based on prefab settings in inspector, Adjust SDK will be initialized as soon as Awake method of the scene you have added prefab to has been invoked. Is it expensive to integrate Unity SDK with Adjust? Or give us a try for FREE. Note This setting requires Adjust SDK v4.20.0 or later. Activate offline mode by calling setOfflineMode with the parameter true. Pricing Unity SDK and Adjust can vary based on the way they charge. You can control which permissions you would like the post-build process to add to your AndroidManifest.xml file. To integrate the Adjust SDK into your Unity project, follow these steps. In the same way that session callback parameters are sent with every event or session that triggers our SDK, there are also session partner parameters. Send real-time data from multiple sources to Adjust.

Delaying the start of the Adjust SDK gives your app time to receive any session parameters (such as unique identifiers) you may want to send on install. Change it from DWARF with dSYM File to DWARF. Learn more about the product and how other engineers are building their customer data pipelines. Set this method on the config object by calling the method setDeferredDeeplinkDelegate: With deferred deeplinking, there is an additional setting you can set on the AdjustConfig object. You can delay the start time of the Adjust SDK for a maximum of 10 seconds. We'll assume you're ok with this, but you can opt-out if you wishCookieSettings. To conveniently and efficiently communicate the new state of consent to the backend, Adjust SDK offers a wrapper around the app tracking authorization method described in the following chapter, App-tracking authorization wrapper. Depending on whether you are building your app for testing or for production, change the Environment setting to either 'Sandbox' or 'Production'. Adding the same parameter twice will have no effect. No additional integration steps are needed to start using the Huawei Referrer API. See the section on session callback parameters for more information.

Whenever you add these parameters, we save them (so you don't need to add them again). Necessary cookies are absolutely essential for the website to function properly. In case you don't want the Adjust SDK to automatically communicate with SKAdNetwork, you can disable that by calling the following method on configuration object: You can use Adjust SDK wrapper method updateConversionValue to update SKAdNetwork conversion value for your user: You can register callback to get notified each time when Adjust SDK updates conversion value for the user. If your app makes heavy use of event tracking, you might want to delay some network requests in order to send them in one batch every minute. Publishers who use Unity Mediation can integrate their Unity mediated project with the Adjust SDK and view ad revenue events on each respective dashboard to measure impression-level data and advertising campaign performance.

this software and associated documentation files (the "Software"), to deal in It is always possible to activate the Adjust SDK by invoking setEnabled with the enabled parameter set to true. The Content Provider, System Properties, or File System method is supported from SDK v4.23.0 and above. After creating the AdjustConfig object, call the adjustConfig.setAttributionChangedDelegate with the previously created method. This will receive one string parameter where the content of the URL is delivered. It is not possible to access a user's attribution value before the SDK has been initialized and the attribution callback has been triggered. Users can opt out of sharing their Google advertising ID by toggling the "Opt out of Ads Personalization" setting on their device. Prerequisite: Install the Adjust Unity SDK. use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies Set the initial delay time in seconds with the method setDelayStart in the AdjustConfig instance: In this example, the Adjust SDK is prevented from sending the initial install session and any new event for 5.5 seconds. We support deeplinking on iOS and Android platforms. IN NO EVENT SHALL THE To send us a push notification token, call the setDeviceToken method on the Adjust instance when you obtain your app's push notification token (or whenever its value changes): You can set up a callback to be notified about attribution changes. Each one of these frameworks offers certain functionality which Adjust SDK will take the advantage of, in case corresponding framework is linked with your app. Note: This feature is only available in the SDK v4.22.0 and above. After 5.5 seconds (or if you call Adjust.sendFirstPackages() during that time), every session parameter is added to the delayed install session and events, and the Adjust SDK will work as usual. Use the Unity app to send real-time data to Google Analytics, Easily send event stream and batch data to Amazon S3 from your Unity app, Automatically send data from your Unity app to any destination that supports Webhooks.

Note: As of version 4.12.0, Adjust Unity SDK is compatible with Unity 5 and newer versions. You can also use a lambda with the same signature. In order to get this identifier, call this method on Adjust instance: Information about the adid is only available after our backend tracks the app install. Note: We don't store any of your custom parameters. Call the method setLogDelegate in the AdjustConfig instance before starting the SDK. The Google advertising ID can only be read in a background thread. This website uses cookies to improve your experience while you navigate through the website. They can also help you to deduplicate installs by user so that a user isn't counted as multiple new installs. In order to set up deeplinking support for iOS platform, make sure to perform the following steps: What iOS post-build process will perform under the hood will be swizzling of some of your app's default AppDelegate methods in order to intercept the link which has opened the app and then forward the call further up the hierarchy to your app's default AppDelegate callback method implementation. If you would like to see information about deeplink captured inside of the Unity layer in your app, make sure to check Application.deepLinkActivated method offered by Unity. Copyright (c) 2012-Present Adjust GmbH, http://www.adjust.com. Once the Adjust SDK gets the deferred deeplink information, you can choose whether our SDK should open the URL or not. You can read more about special partners and these integrations in our guide to special partners. You can disable Adjust SDK tracking by invoking the method setEnabled with the enabled parameter as false. Push tokens are used for Audience Builder and client callbacks; they are also required for uninstall and reinstall tracking. You can track ad revenue information with Adjust SDK by invoking the following method: Currently we support the below source parameter values: Note: Additional documentation which explains detailed integration with every of the supported sources will be provided outside of this README. If the file is not there, it creates a copy from our compatible manifest file AdjustAndroidManifest.xml. The Google Play Store intent will exist in parallel with the API temporarily, but is set to be deprecated in the future. It is not possible to access the adid value before the SDK has been initialized and the installation of your app has been successfully tracked. Since August 1st 2014, apps in the Google Play Store must use the Google Advertising ID to uniquely identify devices. To obtain the IDFA, call the function getIdfa of the Adjust instance: The Google Play Services Advertising Identifier (Google advertising ID) is a unique identifier for a device. The callback function will be called when the SDK receives final attribution data. You should see a line like the following in your LogCat: Offline mode suspends transmission to our servers while retaining tracked data to be sent at a later point.

If you add an event partner parameter with the same key as a session partner parameter, we will show the event value. Here is a quick summary of its properties: Note: The cost data - costType, costAmount & costCurrency are only available when configured in AdjustConfig by calling setNeedsCost method. Using the same ID across different users or devices could lead to duplicated data. Do this before you initialize the Adjust SDK. You can import existing external device IDs into Adjust. This site uses cookies to improve your experience. More information about this in Deeplinking overview chapter. The Adjust SDK is licensed under the MIT License. Adjust is an industry-leading mobile attribution provider that allows you to bring all your business data together to get powerful insights from it. Read more about module partners and their extended integration. Technical documentation on using RudderStack to collect, route and manage your event data securely. To check whether the Adjust SDK is receiving the Google advertising ID, start your app by configuring the SDK to run in sandbox mode and set the log level to verbose. We consider a variety of different sources for attribution, so we provide this information asynchronously. These are transmitted to network partners for all of the integrations activated in your dashboard. If events are set up in the Adjust dashboard to receive conversion values, the Adjust backend sends the conversion value data to the SDK. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are as essential for the working of basic functionalities of the website. This opens a boolean parameter where you can enter whether the suppress log level should be supported or not: If your target is Windows-based and you want to see the compiled logs from our library in Release mode, redirect the log output to your app while testing it in Debug mode. In the Project Navigator, select the Unity-iPhone project. It also checks for the presence of the AndroidManifest.xml file in the Android plugins folder. In order to set up deeplinking support for Android platform, make sure to add all the schemes you would like your app to handle into the Android URI Schemes list. If you do not add this permission, you will not be able to read the Google advertising ID even if the user has not opted out of sharing their ID. This is especially useful for tracking in-app purchases. If you would want to obtain information about iOS deeplink in earlier versions of Unity, you would need to implement this mechanism on your own. Calling the following method will instruct the Adjust SDK to communicate the user's choice to be forgotten to the Adjust backend: Upon receiving this information, Adjust will erase the user's data and the Adjust SDK will stop tracking the user. If you call the method getGoogleAdId of the Adjust instance with an Action delegate, it will work in any situation: You will now have access to the Google advertising ID as the variable googleAdId. You signed in with another tab or window. Important You need to make sure this ID is unique to the user or device depending on your use-case. If you are using Proguard, add these lines to your Proguard file: In order to attribute the install of an Android app, Adjust needs information about the Google install referrer. You can set up your app to get this by using the Google Play Referrer API or by catching the Google Play Store intent with a broadcast receiver. Make sure to set the Environment to Production before you publish the app. Please make sure to keep your environment setting updated. When you put the Adjust SDK back into online mode, all saved information is sent to our servers with the correct time information. This ensures that the backend matches future data to your existing device records. Once you integrate the Adjust SDK into your project, you can take advantage of the following features: Note: This feature exists only in iOS platform. Parameters described above are the ones which API exects you to pass to subscription object prior to tracking subscription. Deactivate offline mode by calling setOfflineMode with false. Set up a Unity SDK source and start sending data. There are various libraries which are handling in app purchases in Unity and each one of them should return information described above in some form upon successfully completed subscription purchase. You can notify Adjust when a user disables, enables, and re-enables data sharing with third-party partners. Find the required code change using the table below. of the Software, and to permit persons to whom the Software is furnished to do Read more about currency conversion here. Users may interact with the URL regardless of whether they have your app installed on their device (standard deeplinking) or not (deferred deeplinking). You also have the option to opt-out of these cookies. How long does it take to integrate Unity SDK with Adjust? requestTrackingAuthorizationWithCompletionHandler: Adjust app-tracking authorization wrapper, Initialize it based on prefab settings you have set in inspector (for this to happen, you need to have, Initialize it from your app's code (for this to happen, you need to have, receipt(you need to pass properly formatted JSON. Open your app delegate and set the default tracker of your config: Replace {TrackerToken} with the tracker token you created in step one. These cookies will be stored in your browser only with your consent. IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, SDK does not offer any way of forwarding of deeplinks into Unity layer to be picked up in some custom callback method. Custom parameters are only available as raw data and will not appear in your Adjust dashboard. If specified there, Adjust iOS post-build process will make sure to add this setting into your app's Info.plist file. Click the Build Settings tab and search for debug information. Please note that even when testing, this decision is permanent. In addition to the data points the Adjust SDK collects by default, you can use the Adjust SDK to track and add as many custom values as you need (user IDs, product IDs, etc.) This is the Unity SDK of Adjust.