Adjust Plugin not delivering subscription events

@solares


We use the example from this repo, integrate the Adjust SDK to our app via the solar2d plugin.

The plugin can be initialized and send events to Adjust.
We can see those events on Adjust dashboard.

But the subscription tracking doesn’t work.
We have set up the app and subscription tracking on Adjust.
We call the trackAppStoreSubscription function after subscribing.

We get this log on the device:

預設 18:17:10.919230+0800 Fun English [Adjust]d: Added package 1 (subscription)
預設 18:17:10.920677+0800 Fun English [Adjust]v: Path:      /v2/purchase
預設 18:17:10.920752+0800 Fun English [Adjust]v: ClientSdk: corona4.23.1@ios4.23.2
預設 18:17:10.920898+0800 Fun English [Adjust]v: Parameters:
預設 18:17:10.920964+0800 Fun English [Adjust]v: app_token              m092z934n56o
預設 18:17:10.921015+0800 Fun English [Adjust]v: app_version            20210302.1810
預設 18:17:10.921197+0800 Fun English [Adjust]v: app_version_short      24.3.0
預設 18:17:10.921261+0800 Fun English [Adjust]v: att_status             0
預設 18:17:10.921317+0800 Fun English [Adjust]v: attribution_deeplink   1
預設 18:17:10.921485+0800 Fun English [Adjust]v: billing_store          iOS
預設 18:17:10.921550+0800 Fun English [Adjust]v: bundle_id              **.*****.******
預設 18:17:10.921602+0800 Fun English [Adjust]v: connectivity_type      3
預設 18:17:10.921777+0800 Fun English [Adjust]v: country                TW
預設 18:17:10.921844+0800 Fun English [Adjust]v: cpu_type               CPU_SUBTYPE_ARM64_V8
預設 18:17:10.921896+0800 Fun English [Adjust]v: created_at             2021-03-02T18:17:10.888Z+0800
預設 18:17:10.922071+0800 Fun English [Adjust]v: currency               TWD
預設 18:17:10.922137+0800 Fun English [Adjust]v: device_name            iPad5,3
預設 18:17:10.922188+0800 Fun English [Adjust]v: device_type            iPad
預設 18:17:10.922358+0800 Fun English [Adjust]v: environment            sandbox
預設 18:17:10.922421+0800 Fun English [Adjust]v: event_buffering_enabled 0
預設 18:17:10.922476+0800 Fun English [Adjust]v: hardware_name          J81AP
預設 18:17:10.922610+0800 Fun English [Adjust]v: idfa                   00000000-0000-0000-0000-000000000000
預設 18:17:10.922658+0800 Fun English [Adjust]v: idfv                   00000000-0000-0000-0000-000000000000
預設 18:17:10.922780+0800 Fun English [Adjust]v: language               zh
預設 18:17:10.923278+0800 Fun English [Adjust]v: m                      7A68004A383141500E0500000000000000024200F9FA0028B60005C9603E09B2
預設 18:17:10.923346+0800 Fun English [Adjust]v: needs_response_details 1
預設 18:17:10.923403+0800 Fun English [Adjust]v: os_build               18E5154f
預設 18:17:10.923552+0800 Fun English [Adjust]v: os_name                ios
預設 18:17:10.923619+0800 Fun English [Adjust]v: os_version             14.5
預設 18:17:10.923770+0800 Fun English [Adjust]v: persistent_ios_uuid    5e7c5de2-2985-4293-9112-35322a3be206
預設 18:17:10.923840+0800 Fun English [Adjust]v: receipt                ZXdvSkluTnBaMjVoZEhWeVpTSWdQU0FpUVhndmFUZENhbUpVVlhsNlNuWnhaa295V21OU0wyVTNXRXRpV213NVEzWTRkV1ZrU0cwMVYxcGtkVGsyUkZKdGJrOTJOVGh5VUdwaFRuQnFTVXg1ZVZkb1cYTkJNSE5UWm5jMWEwOVRNWEJaY0ZoUEx5OVpOMkpZVkd4YVZHMTVXWGx0UVc5WlRWa3ljalIzUlRGNVZHZ3JUR1p6VTFwVldsQkxjV1o0YjNoMlFWaFBja0ozZFZWcVFuQldlVUppU1Zob2JETkhNa3RJUWxjd2JDczRMM0puYkRsb2VIbGtOVVU1VFZkVFNsUmxWalJhYm1kSVprNUNZWEZwUVcwelp6TnZhRWR4Vldwa016bEVXRTF1UzJnelJWZFVkemxLTTJ0MWJqWk1RbE5XUm5SQmVFbHJsbWw2YjBJMWQyNVpka054Ykc1S2RVNXBWMWRGVkhoTU1YRkdNbFZ1WVdsa2RFaDZVblYwZUcxaE9WbEdUeXRITTFrckswOWtibVJVZGpka1MxcHpRbVpCU2xSWVRscG5RbFZLY1dZdk5IZG5hRzFDUzFCUVRHTmhUVnBRU2k4MVExRXJUbEV3YldWemIwMUlTVFZWWTBGQlFWZEJUVWxKUm1aRVEwTkNSMU5uUVhkSlFrRm5TVWxFZFhSWWFDdGxaVU5aTUhkRVVWbEtTMjlhU1doslkwNUJVVVZHUWxGQmQyZGFXWGhEZWtGS1FtZE9Wa0pCV1ZSQmJGWlVUVkpOZDBWUldVUldVVkZMUkVGd1FtTklRbk5hVTBKS1ltMU5kVTFUZDNkTFoxbEVWbEZSVEVSRFRrSmpTRUp6V2xOQ1dHSXpTbk5hU0dSd1drZFZaMUpIVmpKYVYzaDJZMGRXZVVsR1NteGlSMFl3WVZjNWRXTjZSa1ZOUlVsSFFURlZSVUYzZHpkUldFS<…>
預設 18:17:10.924041+0800 Fun English [Adjust]v: revenue                1990.00000
預設 18:17:10.924160+0800 Fun English [Adjust]v: sales_region           TW
預設 18:17:10.924228+0800 Fun English [Adjust]v: session_count          1
預設 18:17:10.924274+0800 Fun English [Adjust]v: session_length         113
預設 18:17:10.924379+0800 Fun English [Adjust]v: subsession_count       2
預設 18:17:10.924707+0800 Fun English [Adjust]v: time_spent             60
預設 18:17:10.924773+0800 Fun English [Adjust]v: transaction_date       2021-03-02T10:16:27.000Z+0800
預設 18:17:10.924823+0800 Fun English [Adjust]v: transaction_id         1000000783381848
預設 18:17:10.934849+0800 Fun English [Adjust]d: Package handler wrote 1 packages
預設 18:17:10.935664+0800 Fun English [Adjust]v: requestForPostPackage with urlString: https://subscription.adjust.com/v2/purchase
預設 18:17:12.050739+0800 Fun English [Adjust]v: Response: {"purchase_exist":false,"purchase":{"id":"efe32b8c-1cf7-4af3-b550-64c44fa1e593","created":"2021-03-02T10:17:11.702851732Z","updated":"2021-03-02T10:17:11.702851732Z","transaction_id":"1000000783381848"}}
預設 18:17:12.050918+0800 Fun English [Adjust]d: succeeded with current url strategy
預設 18:17:12.051610+0800 Fun English [Adjust]d: Got JSON response with message: (null)

However, we don’t see subscription events showing on Adjust dashboard, and we’re not getting the real-time callbacks from Adjust which should be triggered when they receive events.

Adjust team says they don’t see anything come through for subscriptions on their servers from our app.

  • Is it possible that the Solar2D plugin isn’t up to date?
  • Or, can we only use the Solar2D Native to build from Xcode for using the Adjust SDK?

We have tested custom events before tracking the subscription, and they do appear on the Adjust dashboard.

    -- TestEvent
    adjust.trackEvent({
        eventToken = "******"
    })

Now it’s working on iOS, but not working on Android.

  1. We add the plugin. We can get the install event after initializing the plugin.
  2. Calling the trackPlayStoreSubscription function after making a subscription doesn’t work.
  3. No data gets to the Adjust backend from our app.
  4. Console only shows install event, no other events appear.

Could this be a problem with the Solar2D implementation of the Adjust plugin?

@vlads Are you able to take a look at this? It’s hard to know if the problem is Solar2D plugin or not. As we are successfully receiving iOS events, it would appear that our Adjust integration is working, so perhaps it is an Android plugin problem?

It could be problem with the plugin. How exactly are you using the repo? Just integrate plugin with buid.settings, like

    plugins = {
        ["plugin.adjust"] = {
            publisherId = "com.adjust",
        },
    },

Yes.
Just add the plugin in the build.settings, like other plugins.

  plugins =
  {
    -- ["plugin.deltatime"] = { publisherId = "com.julianvidal",},


    -- ["plugin.advertisingId"]        = { publisherId = "com.coronalabs" }, -- Apple only
    -- ["plugin.firebaseAnalytics"] = { publisherId = "tech.scotth" },
    -- ["plugin.firebaseConfig"] = {publisherId = "tech.scotth"},
    -- ["plugin.kochava"] = { publisherId = "com.coronalabs" },
    
    
    ["plugin.universalLinks"] = { publisherId="scotth.tech", supportedPlatforms = { iphone = { url="https://solar2dmarketplace.com/marketplacePlugins?ID=2g4ttf&plugin=UniversalLinks_scotth-tech&type=iOS"}, macos = { url="https://solar2dmarketplace.com/marketplacePlugins?ID=2g4ttf&plugin=UniversalLinks_scotth-tech&type=MacOS" }, win32 = { url="https://solar2dmarketplace.com/marketplacePlugins?ID=2g4ttf&plugin=UniversalLinks_scotth-tech&type=Windows" }, } },    

    ["plugin.reviewPopUp"] = { publisherId="scotth.tech", supportedPlatforms = { iphone = { url="https://solar2dmarketplace.com/marketplacePlugins?ID=2g4ttf&plugin=ReviewPopUp_scotth-tech&type=iOS"}, macos = { url="https://solar2dmarketplace.com/marketplacePlugins?ID=2g4ttf&plugin=ReviewPopUp_scotth-tech&type=MacOS" }, win32 = { url="https://solar2dmarketplace.com/marketplacePlugins?ID=2g4ttf&plugin=ReviewPopUp_scotth-tech&type=Windows" }, } },        

    ['plugin.adjust'] = { publisherId = 'com.adjust' },

    ["plugin.pagecurl"] = { publisherId = "com.xibalbastudios" },
    ["plugin.iCloud"]               = { publisherId = "com.coronalabs",supportedPlatforms = { iphone=true, osx=true, appletvos=true }},
    ["plugin.notifications"]        = { publisherId = "com.coronalabs" },
    ["plugin.google.iap.v3"]        = { publisherId = "com.coronalabs", supportedPlatforms = { android=true } },
    ["plugin.amazon.iap"]           = { publisherId = "com.coronalabs", supportedPlatforms={ ["android-kindle"]=true} },
    ["plugin.CoronaSplashControl"]  = { publisherId = "com.coronalabs" },
    ["plugin.zip"]                  = { publisherId = "com.coronalabs" },
    ["CoronaProvider.native.popup.activity"] = {publisherId = "com.coronalabs", supportedPlatforms = { iphone=true } },
    ["CoronaProvider.native.popup.social"] = { publisherId = "com.coronalabs" },
    ["plugin.pasteboard"] = { publisherId = "com.coronalabs" },
  },

Have you pinged Adjust support? They are the ones building/maintaining the plugin after all.

Hi @akao. Yes, we are in touch with them. What we are unclear about is if this is an adjust problem or a Solar2D problem, so we have an issue here if the latter is the case.

Hi, @vlads
Adjsut team says the trackPlayStoreSubscription function needs the product id.

adjust.trackPlayStoreSubscription({
    price = "6",
    currency = "EUR",
    sku = "your-product-id",
    orderId = "your-order-id",
    signature = "your-signature",
    purchaseToken = "your-purchase-token",
    purchaseTime = "unix-timestamp",
})

The key for sku should be notated as sku = "your-product-id", and they will update the document soon.

I had add the sku and test via sandbox subscription several times,
but the trackPlayStoreSubscription still not working.
Can you please take a look at this?

@solares

@solares @vlads Did you ever get this problem with Adjust attribution resolved?

And how well is the Adjust plugin working for non-subscription events?

Sorry didn’t see this until now. We did get it going in the end, but in general we’re a little unsatisfied with the results, as we get much lower reporting rates than we expect.

It’s a little complicated to explain why this is the case - we have spent 100s of hours trying to match data from various sources and Adjust seems always to be very low compared to other measurements.

@troylyndon

1 Like