how to track referral link on android - android

I've an android app available on google play store and I want to create a referral system to engage users to share.
The app already has an share button which creates a link like:
Hey, have a look at this app...https://play.google.com/store/apps/details?id=com.tomatedigital.&referrer=utm_source%3Dapp_referral_USERID
this way i can monitore through google play console and firebase dashboard which links generated downloads, it show the information pretty nice but i need to automatically get it.
would be awesome if i could get it inside the app so i show the sign up for to the user with the referer already filled... but i strongly think it's impossible
but if somehow i can get this information from google play console I could write a script which runs once per day and update the bonus to users with most shares
is that possible? how can i implement a referral system like this?

This can be done with the Google Play referral API which has some more docs here

Related

Distribute unlisted Android apps on Google Play

Google Play has something called Private Apps: https://support.google.com/googleplay/work/answer/6145139?hl=en
However, to my understanding this means that only members of my organization can install the app. It doesn't say what "organization" mean but I assume it's members of a Google Workspace or a specific email domain.
I want to achieve something similar to Apples "Unlisted apps": https://developer.apple.com/support/unlisted-app-distribution
This means the app is present on the Appstore, but it's not listed or searchable. Only if you have the link to the app you can download it, and the user will receive automatic updates.
Is there something similar on Google Play? I want to distribute and update the app via Google Play, but only to users that I share the url with.
You can publish the app on the Google Play store via the Play Console and while selecting where to launch (publish) the app, add the app/app bundle only to the closed testing option. There you can add specific email ids and only those will be able to see the app, get updates, etc. no one else.
we use internal testing on playstore to test the app internally before we move to closed and open beta. More details can be access in the below link
https://support.google.com/googleplay/android-developer/answer/9845334?hl=en

How do i get my app publishing status via API

Every time you publish even a tiniest update to your app to google play, you have to wait for a review process before an update will be published. This review process can take up to a few days at worst (because poor google is struggling with COVID, boo-hoo).
Anyway, is there a way to know precisely when it is reviewed and published via some API? I know they have e-mail notifications, but i need to make this process more automated. I don't mind sending a request every few minutes to get the status of my app. So far I have researched google play console API, but I couldn't find any methods to get an app status.
Most likely, google (being stupid as usual), didn't provide any way to do this properly. Maybe I can do this via directly parsing a google play console HTML page? Of course if it isn't against google's ToS. Thanks.
There's no such API to get the status of published or pending on the console, the only option is to open your google console where you'll see the notification about what's the status of your app.
And for parsing the Console Html page, I don't think so Google will allow you to do that.
You can give it a try.
Log in to your Google Play console, in All Apps chose a specific app you want to check.
In the dashboard tab exactly below your apps logo, you will see Production status.
Production status is INACTIVE if the app is not reviewed by Google and ACTIVE when the app is reviewed.
In the near app logo, you also have the view On Google Play link so you can click on it to see if your app published in Google Play or not.
See the photo with the inactive app:
Photo with an active app:
For automation maybe you can write some code and use View On Google Play link
and depend on link results to get active or inactive return info.
For example, if the app is not in the store link return:
We're sorry, the requested URL was not found on this server.

Android: how know from where user open application google play store link

I have an application, which advertise it in many sites, and every site have it's own unique referral key which I gave them .
when user open the application link in google play store and install the app , I want to know from which referral site user navigate to store and install my app.
dose Google Play Store has any API for this? if no how can I handle it?
I don't want to use google ads.
google have the sdk for doing this.
Referrer Document

Google play store campaign tracking doesnt work with web browser install

We have a Play Store button on our landing page which has a link tagged with all the required UTM parameters to track installs from the Play Store. So if a visitor clicks on the Play Store button (using a web browser) goes to the web version of the Play Store and installs to his device from there, we should be able to track that install as coming from the web version of our landing page.
However, our data looks sketchy. Tracking less installs than we actually see on Mixpanel.
And then we found this article It says: "Again, attributing installs based on the install referrer using direct links to Google Play does not work if a user chooses to open the measurement URL with a web browser (instead of the Google Play Store app)."
Anybody knows if this is correct? And if yes, what's a comprehensive way to track Play Store installs (source, medium etc)
Yes, this is correct - your app won't get tracking params if your user does not open the Google Play Store app.
If you want to track user's installation source, try some 3rd-party solutions, like Branch.io (free) or Flurry (well, at least Flurry used to do that and used to be free, not sure about now) for example.
Basically, the way they work is that they collect so-called fingerprint of the user (IP, browser, time of the click, device info etc) and then compare it with the data that their SDK sends from within your app (after the user has successfully installed and launched it).
I'm not trying to promote any of those solutions, we are just happen to be using Branch on our production app and it works quite well for us.
Also, you can try to set those link to target market:// links instead of http links (this one would force the Play Store app to open), but I would not recommend that solution as it could cause problems with people who have Google Play Services missing.
market:// links look like these one:
market://details?id=your.package&referrer=utm_stuff...
EDIT:
If you want to keep all your data in one place (let's say, Analytics) - you could pass those utm tracking params into your Branch links and collect/send them manually to Google Analytics (and Play Store - they are connected) using CampaignTrackingReceiver class

How do you gift in-app purchases

I am building a website for a client that is promoting an App on Kickstarter. As one of the rewards this client wants to reward sponsors with in-app purchases. I have searched Apple and posted on other forums but I can't find out if this is possible and if it is possible, how it is done.
Thanks.
You need to implement a promo-code dialog inside your app to do that, then send promo-codes to your Kickstarter users.
I don't think It's possible.
Here's the only Google documentation I could find.
You could make the app free for a short period until all backers have their copy and then raise the price but non backers will be able to download it too.
It would be possible however to use the alpha/beta functionality in the Google Play store to release the app to backers who have joined specific circles setup by you. I don't know if Google would have a problem with you using it like this.
It might be possible to distribute the app outside of the Play Store but I suspect that will become a big support problem as users struggle to get the app installed and keep it up to date.
For iOS part we haven't this functionality with Store Kit. This framework was created to securely process payments from users. You don't need to work with payments. Just deliver some product or an extra functionality to user with promo code. Implement a dialogue in your app where user can enter his code, send this code to your server, check it and give an access for user, if code was right. That's all you need. After making the product available, your app needs to make a persistent record of the "purchase" like you do with normal in-app purchases.

Categories

Resources