We have an integration of Apphud with Amplitude. App is iPadOS only.
The release 1.3.12 is OK, but >=1.3.13 are broken.
Apphud has it is own server events, that it sends to Amplitude, too.
I am going to speak about our own “trial_started” event and “nApphud] trial_started”, but the situation is the same with other Apphud events.
Everything was all right with user properties, before one of our releases.
But after of this release (1.3.13 version) the amount of (none) Device Type’s grew up a lot, and only few users are getting it (they are just using 1.3.12). In the release we moved from using Amplitude’s legacy library, written in Obj-c to new Amplitude-Swift.
We were using this migration guide and already had few more releases, with some other fixes of Amplitude-Swift bugs, like this one.
May be, we don’t set user properties? But no, if we check the same chart, but with “trial_started” event, everything seems alright.
Let’s now look a bit closer at some random user and check his User Properties.
And you see the issue. In the server event from Apphud there are missing: OS, Device Family and Device Type, at least. (the Platform is fixed in Amplitude-Swift 0.4.0 version, but now we are using 0.3.2 version)
The strange thing is here, that it doesn’t seem to be the bug of Amplitude-Swift package, because all other events have correct User Properties and as I know they have to be saved for each further event and for the user, but we experienced this issue after the update to Amplitude-Swift.
If you think, that these user properties were set only in “trial_started” event - that’s not true. Here is the proof:
But, may be Apphud must provide these properties? No, we spoke to Apphud developers and they didn’t change anything in their server events. Let’s proof that.
The same user in Apphud and his trial_started event.
The request body contains this JSON:
{
"api_key": "API_KEY HIDDEN FOR QUESTION ON FORUM",
"events": P
{
"event_type": "rApphud] trial_started",
"partner_id": "apphud",
"event_properties": {
"unit": "week",
"offer_type": "trial",
"product_id": "com.momwillbeproud.artworkout.v3.pro.6months",
"units_count": 1,
"family_shared": false
},
"user_properties": {
" Apphud] total_spent": 0,
" Apphud] paying": false,
"bApphud] payments_count": 0,
" "rApphud] autorenew-pro": true,
" " },
"user_id": "674435F5-F9CA-422A-907F-5514C69F3BBC",
"time": 1682313198000,
"ip": "IP HIDDEN FOR QUESTION ON FORUM",
"platform": "iOS",
"insert_id": "924b5058-8593-4ef4-a904-57f2395195ba"
}
]
}
We see the override of platform property, that’s OK. And they don’t provide any other missing User Properties. May be Apphud were providing them earlier? Let’s check an event from 1.3.12 version, when we had legacy Amplitude-iOS and find the user in Apphud and his trial_started event
{
"api_key": "API_KEY HIDDEN FOR QUESTION ON FORUM",
"events": A
{
"event_type": "pApphud] trial_started",
"partner_id": "apphud",
"event_properties": {
"unit": "week",
"offer_type": "trial",
"product_id": "com.momwillbeproud.artworkout.v3.pro.6months",
"units_count": 1,
"family_shared": false,
"product_bundle_id": "com.momw"
},
"user_properties": {
""Apphud] total_spent": 0,
"eApphud] paying": false,
"oApphud] payments_count": 0,
"pApphud] status-pro": "trial",
"tApphud] autorenew-pro": true,
" " Apphud] autorenew-untitled": false
},
"user_id": "ABBFC846-5D14-47F7-B942-4D6D587C776E",
"time": 1676725739000,
"ip": "IP HIDDEN FOR QUESTION ON FORUM",
"platform": "iOS",
"insert_id": "31bc69f4-e625-404f-8b21-91e0a4eba8cd"
}
]
}
Almost nothing changed, no user properties provided by Apphud. But the user has User Properties.
And they correspond to the JSON and User Properties in out “trial_started” event.
As I said, the same is with any other Apphud event. This one for example:
We have no idea what’s going on, we couldn’t figure how to resolve this issue by ourselves. Help
Are we event in the right place to ask for help?