Testing Version 3 Acquisition

Instructions to help you roundtrip a V3 acquisition campaign link on an Android device.

Important: V3 Acquisition refers to the acquisition links you create with the Acquisition Builder in the Adobe Mobile Services UI. You must upgrade to Android SDK 4.x for Marketing Cloud Solutions 4.6.0 or newer to use this feature.

If the mobile app is not yet in Google Play, you can choose any mobile app as a destination when creating the campaign link. This affects only which app the acquisition server redirects you to after clicking the acquisition link, but not the ability to test the acquisition link.

Query string parameters are passed to the Google Play store, which are then passed to the app upon install as part of a campaign broadcast. Roundtrip mobile app acquisition testing requires simulation of such a broadcast.

The app must be freshly installed (or data cleared in Settings) each time a test is run. This ensures that initial lifecycle metrics associated with the campaign query string parameters are sent when the app is first launched.

  1. Perform the prerequisite tasks contained in Mobile App Acquisition and ensure that you have correctly implemented the broadcast receiver for INSTALL_REFERRER.
  2. Navigate to the Acquisition Builder in the Adobe Mobile Services UI and generate an acquisition campaign URL.

    For more information, see Use Acquisition Builder in the Adobe Mobile Services documentation.

    For example:


    If you refer to both Android and iOS apps in the acquisition link, use Google Play as the default store.

  3. Open the generated link in a desktop browser.

    You should be redirected to a page with a URL similar to the following example:


    Copy the unique ID after utm_content=. In the previous example, the ID is 91b52ce097b1464b9b47cb2995c493cc6ab2c3a3.

  4. Construct the acquisition end link using the unique ID from Step 3, using the following format:
    http://c00.adobe.com/v3/<;appid>/end?a_ugid=<;unique id>

    For example:

  5. Open the link in a desktop browser.

    You should be see the contextData in the JSON response:


    If you don't see contextData, or some of it is missing, ensure that the acquisition URL follows the format specified in Create Acquisition Link Manually in the Adobe Mobile Services documentation.

  6. Repeat Step 3 to obtain a new unique ID.
  7. Verify that the following settings in your config file are correct:
    Setting Value


    The server should be c00.adobe.com

    appid should equal the <;appid> in your acquisition link


    For testing purposes, set the referrer timeout to allow for adequate time (60 seconds or more) to manually send the broadcast. You can restore the original timeout setting after testing.

  8. Connect the device to a computer, uninstall, and then install the app.
  9. Launch ADB Shell, then launch the application on the device.
  10. Send a broadcast using the following adb command:
    am broadcast -a com.android.vending.INSTALL_REFERRER -n com.adobe.android/com.adobe.android.YourBroadcastReceiver --es "referrer" "utm_source=adb_acq_v3&utm_campaign=adb_acq_v3&utm_content=<;unique id get on step 5>"
  11. Replace com.adobe.android with your application's package name, update the receiver reference with that of the location of the campaign tracking receiver in your app, and replace values associated with utm_content.

    If the broadcast is successful, you can expect a response similar to the following example:

    Broadcasting: Intent
    { act=com.android.vending.INSTALL_REFERRER cmp=com.adobe.adms.tests/.ReferralReceiver (has extras) }
    Broadcast completed: result=0
  12. (Optional) You can enable debug logging of the SDK to obtain additional information
  13. .

    If everything works correctly, you should see following logs:

    "Analytics - Received referrer information(<;referrer content>)"
    "Analytics - Trying to fetch referrer data from (acquisition end url)";
    "Analytics - Received Referrer Data(<;A JSON Response>)"

    If you don't see the above logs, ensure that you have performed Steps 6 though 11.

    The following table contains information to explain possible errors:

    Error Description

    "Analytics - Unable to decode response(<;String>)"

    The response is malformed.

    "Analytics - Unable to parse response(<;A JSON Response>)"

    The JSON string is malformed.

    "Analytics - Unable to parse acquisition service response (no contextData parameter in response)"

    There in no contextData parameter in the response.

    "Analytics - Acquisition referrer data was not complete (no a.referrer.campaign.name in context data), ignoring"

    a.referrer.campaign.name is not included in contextData.

    "Analytics - Acquisition referrer timed out"

    Failed to get the response in the time defined by referrerTimeout. Increase the value and try again.

    You should also ensure that you've opened the acquisition link before installing the app.

Notes: Hits sent from the app can be monitored (using HTTP monitoring tools) to provide verification of the acquisition attribution.

  • See Testing Google Play Campaign Measurement in the Google Developers guide if you need more details about how to broadcast INSTALL_REFERRER.
  • We released a bug fix for acquisition on Android 4.8.2. We recommend that you upgrade the SDK to the latest version before testing.

  • For your convenience, we provide a java tool (acquisitionTest.jar) to help you get the unique ID and broadcast install referrer to help you obtain the information in Steps 3 through 11 above. Download acquistionTester.zip, then extract the .jar file.

    You can run the file on the command line.

    For example:

    java -jar acquisitionTester.jar -a com.adobe.test -r com.adobe.test.ReferrerReceiver -l "https://c00.adobe.com/v3/appid/start?a_i_id=123456&a_g_id=com.adobe.test&a_dd=i&ctxa.referrer.campaign.name=name&ctxa.referrer.campaign.trackingcode=1234

Parent topic: Acquisition