install_referrer intent deprecation
Asked Answered
P

7

78

I have received email from google:

We recently announced that we’ll be deprecating the install_referrer intent broadcast mechanism. Because one or more of your apps uses this intent to track referrals, we wanted to ensure you make the switch before March 1, 2020. After this date, new versions of the Play Store app will no longer broadcast the install_referrer intent after app installs.

I am not using install_referrer directly, but while browsing merged manifest i discovered that some firebase service named with package name com.google.firebase.measurement use it.

My firebase dependencies updated to latest version.

Should I care about it?

Pinnacle answered 10/12, 2019 at 20:32 Comment(16)
I have the same letter, I don't use firebase. I am not using install_referrer. I use ADMOB (who may use install_referrer?). So what do we need to change if we are not using install_referrer by ourselves?Russon
I received this message today but i don't understand what can i do !! I am using unity3d and i have used (Admob & Firebase)Iodoform
Same here, We also received it even we are not using any direct referral API. I also not sure which third party lib using it.Obolus
Even I got the notification. I am not sure where I used it. It may be the third party libraries that we have integrated. If that is the case then it's gonna painful.Live
I have also received this email. I have not used any third party library. Yes I have use Admob in my App. What should we change ?Notornis
I got this email and looked at my merged manifest and it looks like Firebase is the cause for this to trigger. So basically wait until Firebase fixes their code and issues an update?Margy
@Jay Exactly CorrectNotornis
Same here... Not directly using, but using Firebase!Squeamish
I have the same letter, News?Narda
Same issue herePimental
@Narda check my answer from firebase supportPinnacle
The strange thing is I use Firebase in two of my apps, but in the mail it only stated one of the apps, despite it was the app with the least Firebase-integration.Turfman
I can not answer, but if somebody uses com.google.android.gms then just update to " implementation 'com.google.android.gms:play-services-ads:18.3.0' " and it will fixed the problemSynod
is there any news from firebase?Narda
Same here, I also got this install_referrer notification from Google. I have 2 apps on the play store both are using firebase but Google mentioned only one app got affected. I am totally clueless about this. I extracted my APK and had a look on the manifest file and found this com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICEBodiless
Any updates on this? I still see references on Firebase Analytics 17.2.1.Rheostat
P
38

From Firebase support:

This is a great catch. Thanks for bringing this to our attention. There's no need [to take] action from your end as of now, I've created an internal request so we could provide an alternative for the install_referrer intent broadcast before its deprecation. As of now, we are yet to find out any details or timelines as to when it will be implemented. You can check our release notes from time to time for any updates about Firebase features and its services.

Strange that Google's products are not synchronized.

However if you are not using Firebase and your app contains third party libraries that use install_referrer kindly check directly with them.

To find in which library install_referrer included, open merged manifest and search for install_referrer, check the package name of the service in which the install_referrer included.

Pinnacle answered 11/12, 2019 at 13:25 Comment(8)
Hope it won't be too long before they release a solution, I guess all events related to installing an app (it might e.g. be the first_open event) won't be sent after March 1st 2020. And after they release the solution all apps using Firebase SDK should release new apps - or else Firebase won't receive any of the affected events.Turfman
@Pavel Poley can you please tell me how I can check for install_referrer if I do not use FirebasePimental
@MouaadAbdelghafourAITALI open merged manifest and try to find install_referrer, right click go to declaration, you can see the package name of the servicePinnacle
Looking at merged Manifest shows install_referrer from Firebase. Should be the accepted answer! Saved my day! ThanksBiparty
Has anyone created a github issue for this yet? It's a bit frustrating to leave it hanging and not be notified when a fix is available while being pestered by Google emails to stop using it.Expecting
Issue has been created: github.com/FirebaseExtended/flutterfire/issues/1594Waring
is there any news from firebase?Narda
is there any news from firebase, I updated it to version 17.2.2 but still find com.android.vending.INSTALL_REFERRERBaxley
S
13

com.google.firebase:firebase-core:17.2.1 and com.google.firebase:firebase-analytics:17.2.1 add INSTALL_REFERRER to AndroidManifest. Probably need to wait till Firebase team updates these packages to use the new API.

Swagman answered 11/12, 2019 at 10:53 Comment(7)
In my case, I do not use any Firebase libraries, and INSTALL_REFERRER still appearPimental
@MouaadAbdelghafourAITALI There should ve some other library using deprecated API in your case then.Swagman
thank you, so the main issue comes from Firebase LibraryPimental
Check the merged manifest tab in your app's AndroidManifest.xml and look for <intent-filter> <action android:name="com.android.vending.INSTALL_REFERRER" /> </intent-filter>. Then if you select that line, it'll tell you which library it comes from. In our case it was play-services-ads.Stavros
I updated it to version 17.2.2 but still find com.android.vending.INSTALL_REFERRER @SwagmanBaxley
@Neo Why did you decide that 17.2.2 has this issue fixed? As far as I can see from changelog it doesn't contain the fix. It means that Firebase team hasn't yet fixed the issue.Swagman
I just updated to latest version I thought they must fix the issue because we are passed 1 march already @SwagmanBaxley
P
9

Various SDKs can register a receiver for the install referrer.

For developers who are unsure about which SDK added a receiver to your manifest it's useful to look at the manifest merge blame file. Typically, in build/ there's a file intermediates/manifest_merge_blame_file/release/manifest-merger-blame-release-report.txt

In that file you'll need to find receivers that have

<action android:name="com.android.vending.INSTALL_REFERRER" />

in it's intent-filter, and the line before it will indicate what the source of that line is in your manifest.

For instance, the relevant lines for one of my apps looks like this:

44        <receiver
44-->[com.appbrain:appbrain-sdk:15.10] .../jetified-appbrain-sdk-15.10/AndroidManifest.xml:29:9-35:20
45            android:name="com.appbrain.ReferrerReceiver"
45-->[com.appbrain:appbrain-sdk:15.10] .../jetified-appbrain-sdk-15.10/AndroidManifest.xml:30:13-57
46            android:exported="true" >
46-->[com.appbrain:appbrain-sdk:15.10] .../jetified-appbrain-sdk-15.10/AndroidManifest.xml:31:13-36
47            <intent-filter>
47-->[com.appbrain:appbrain-sdk:15.10] .../jetified-appbrain-sdk-15.10/AndroidManifest.xml:32:13-34:29
48                <action android:name="com.android.vending.INSTALL_REFERRER" />
48-->[com.appbrain:appbrain-sdk:15.10] .../jetified-appbrain-sdk-15.10/AndroidManifest.xml:33:17-79
48-->[com.appbrain:appbrain-sdk:15.10] .../jetified-appbrain-sdk-15.10/AndroidManifest.xml:33:25-76
49            </intent-filter>
50        </receiver>

This shows that the AppBrain SDK (of which I'm one of the developers) adds a receiver for the install referrer. The following image from our blogpost explaining what exactly changes (https://medium.com/appbrain/the-google-play-referrer-api-and-the-appbrain-sdk-38cfbaa350dc) is clarifying what Google is changing: Change in Google Play referrer API

Piotr answered 12/12, 2019 at 12:12 Comment(2)
Awesome! I was not aware of this file, it helped me figuring out what exactly is using install_referrer. Just to clarify, I found it in the app-modules build/ folder and not in the root build/ folder.Turfman
I am using Unity3D and I am not sure how I can use this info, do you know a solution for Unity3D as well?Educt
N
5

After checking the manifest file on my builded apk, i found the install refeer broadcast used by the firebase-measurement-connector module on Firebase Core Analytics so i exclude them :

 implementation ('com.google.firebase:firebase-ads:17.2.0')
{
    exclude group: 'com.google.firebase', module: 'firebase-core'
    exclude group: 'com.google.firebase', module: 'firebase-analytics'
    exclude group: 'com.google.firebase', module: 'firebase-measurement-connector'
}

And then recheck again my manifest mereged file by Analyzing APk and the Install refeer broadcast is disappeared.

On other side, if you use track analytics, Google ask to switch to the Install Referrer API https://developer.android.com/google/play/installreferrer/library.html before March 2020

Nightshirt answered 11/12, 2019 at 9:2 Comment(0)
I
5

I checked Firebase support agent for this issue. Firebase libraries are using install_referrer, and I got below response from Firebase support agent:

This is a great catch. Thanks for bringing this to our attention. I'm currently in discussion with our Analytics experts and will get back within 48 hours, or as soon as I have more information. For now, no need for any action from your end, wait for the next update from the Firebase team.

I believe we need to wait Firebase's next release. And Firebase team updates these packages to use the new API.

If you have used this API in your code by yourself, then you need to change it immediately as you are not depending on firebase or any other third party library provider.

Impoverish answered 18/12, 2019 at 5:51 Comment(3)
I updated it to version 17.2.2 but still find com.android.vending.INSTALL_REFERRER, how you solve the problem?Baxley
Yeah, same situation, Faxriddin Abdullayev have heard back from the support agent? thank you!Rheostat
Alright, we finally have an update, they removed on: Analytics version 17.4.0.Rheostat
N
3

There is one article on Android developer blog about this

https://android-developers.googleblog.com/2019/11/still-using-installbroadcast-switch-to.html

Also in this article they mention old implementation of install_referrer intent broadcast mechanism and provide complete information. So we can find this in our existing code.

https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-campaigns

Notornis answered 11/12, 2019 at 5:40 Comment(2)
OP mentioned that he's not directly integrating into this API... it's very likely the majority of developers here do not use this directly given its relatively obscure use caseMargy
@Jey Sidri It helped me, stackoverflow is not only about the OP you know ?Strawworm
B
0

INSTALL_REFERRER comes not only with Firebase but also withADMOB. I can confirm that Admob v3.18.3 has this permission but it is no longer coming in Admob v4.2.1. I have not tested other versions but i have heard that some previous versions like 4.2.0 & 4.1.0 also not carrying this permission.

But the question here is whether we need to remove the permission or we need to make sure that if our app is using Play Install Referrer Library then the INSTALL_REFERRER must be included. Because action required is not to remove it but migrate to it.

enter image description here

Bogie answered 28/2, 2020 at 5:29 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.