Search Unity

Migrate to the Play Install Referrer API

Discussion in 'Android' started by mahmoud93p, Dec 10, 2019.

  1. mahmoud93p

    mahmoud93p

    Joined:
    Feb 11, 2015
    Posts:
    66
    I received message today from google play

    Hello Google Play Developer,
    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.

    Action required
    Migrate to the Play Install Referrer API to track your app installs for the following apps and/or games.



    I am using (Firebase & AdMob ) in my project but i don't know what can i do because this libraries from google!
     
    breban1 likes this.
  2. JeffDUnity3D

    JeffDUnity3D

    Joined:
    May 2, 2017
    Posts:
    14,446
    Update the Google libraries, as suggested?
     
  3. mahmoud93p

    mahmoud93p

    Joined:
    Feb 11, 2015
    Posts:
    66
    I make update today and after that i received the email, but my question how can i know if my game used (install_referrer intent) or not ?
     
  4. JeffDUnity3D

    JeffDUnity3D

    Joined:
    May 2, 2017
    Posts:
    14,446
    Are you using it? You would know if you coded it. Otherwise one of your assets may be. Did you try a Google search for "Firebase install_referrer intent"? It will tell you where to check (hint, Android manifest)
     
  5. mahmoud93p

    mahmoud93p

    Joined:
    Feb 11, 2015
    Posts:
    66
    I don't sure if i am using or not because this libraries automatic install when install asset in unity,
    This my main Android manifest:

    Code (CSharp):
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="com.xxx.xx"
    3.           android:versionCode="1" android:versionName="1.0">
    4.   <application android:label="@string/app_name" android:icon="@drawable/app_icon">
    5.     <!-- The MessagingUnityPlayerActivity is a class that extends
    6.          UnityPlayerActivity to work around a known issue when receiving
    7.          notification data payloads in the background. -->
    8.     <activity android:name="com.google.firebase.MessagingUnityPlayerActivity"
    9.               android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
    10.       <intent-filter>
    11.         <action android:name="android.intent.action.MAIN" />
    12.         <category android:name="android.intent.category.LAUNCHER" />
    13.       </intent-filter>
    14.       <meta-data android:name="unityplayer.UnityActivity" android:value="true" />
    15.     </activity>
    16.     <service android:name="com.google.firebase.messaging.MessageForwardingService" android:exported="false" />
    17.     <meta-data android:name="com.google.android.gms.ads.AD_MANAGER_APP" android:value="true" />
    18.     <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="xxxxxx" />
    19.   </application>
    20. </manifest>
    Firebase manifest
    Code (CSharp):
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <!-- Copyright (C) 2016 Google Inc. All Rights Reserved.
    3.  
    4. This file is placed in the Unity Android Plugin to make it support the
    5. eclipse style directory structure. It's currently used only as a stub, and has
    6. no real data that gets merged with the final manifest, but is none-the-less
    7. needed for the plugin to be parsed correctly in the folder structure we use.
    8. -->
    9. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    10.          package="com.google.firebase.unity"
    11.          android:versionCode="1"
    12.          android:versionName="1.0">
    13.  <uses-sdk android:minSdkVersion="14"/>
    14. </manifest>
    15.  
    GoogleMobileAdsPlugin manifest
    Code (CSharp):
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.google.unity.ads" android:versionName="1.0" android:versionCode="1">
    3.   <application>
    4.     <uses-library android:required="false" android:name="org.apache.http.legacy" />
    5.     <meta-data android:name="com.google.android.gms.ads.AD_MANAGER_APP" android:value="true" />
    6.   </application>
    7. </manifest>
    8.  
    AgoraAudioKit.plugin manifest
    Code (CSharp):
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    3.           package="io.agora.gaming.unity3d.wrapper"
    4.           android:versionCode="1"
    5.           android:versionName="1.0">
    6.  
    7.     <uses-permission android:name="android.permission.INTERNET" />
    8.     <uses-permission android:name="android.permission.RECORD_AUDIO" />
    9.     <uses-permission android:name="android.permission.BLUETOOTH" />
    10.     <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    11.     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    12.     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    13.     <uses-permission android:name="android.permission.WAKE_LOCK" />
    14.     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    15.     <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    16.     <uses-permission android:name="android.permission.READ_LOGS" />
    17.  
    18. </manifest>
    19.  


    I am sorry but i don't know what is code for "install_referrer intent" and from where can i change !
     
  6. Nomibuilder

    Nomibuilder

    Joined:
    Apr 24, 2014
    Posts:
    20
    I have got the same mail from Google Play and also looking for an answer.
     
  7. Sailendu

    Sailendu

    Joined:
    Jul 23, 2009
    Posts:
    254
    I also received this email, not sure what to do now. The official AdMob plugin for Unity by Google does all those Play Services and other install stuff when imported to Unity. I found out it is something related to build Gradle in the stackoverflow link below but I am not sure what is build Gradle and how to update to play-services-ads 18.3.0 if Google don't update their official AdMob plugin. Can someone please help me understand all this?

    https://stackoverflow.com/questions/59276004/migrate-to-the-play-install-referrer-api-unity3d
     
  8. Nadan

    Nadan

    Joined:
    Jan 20, 2013
    Posts:
    341
    I got the same email, and it seems I have three games having this issue. I'm not using AdMob, but I recently added Facebook SDK to these games. Maybe it's related to that.
     
  9. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,609
    Looking into this too and found the Adjust SDK seems to pull in the
    INSTALL_REFERRER
    API.
    Code (CSharp):
    1. <receiver android:name="com.adjust.sdk.ReferrerReceiver" android:exported="true" >
    2.     <intent-filter>
    3.         <action android:name="com.android.vending.INSTALL_REFERRER" />
    4.     </intent-filter>
    5. </receiver>
     
  10. JeffDUnity3D

    JeffDUnity3D

    Joined:
    May 2, 2017
    Posts:
    14,446
  11. Sailendu

    Sailendu

    Joined:
    Jul 23, 2009
    Posts:
    254
  12. JeffDUnity3D

    JeffDUnity3D

    Joined:
    May 2, 2017
    Posts:
    14,446
    I have a sense that it may be a false positive email from Google.
     
  13. Sailendu

    Sailendu

    Joined:
    Jul 23, 2009
    Posts:
    254
    That might also be true. Let's see, I think I will wait for some more days for the truth to come out.
     
  14. absrndm

    absrndm

    Joined:
    May 16, 2017
    Posts:
    5
    I'm having the exact same issue, just using Admob and got this email. Please let me know if you find out something!
     
    NatsuD_123 likes this.
  15. NatsuD_123

    NatsuD_123

    Joined:
    Feb 19, 2019
    Posts:
    18
    facebook sdk is adding this permission. it is too note here that no admob and firbase sdk is been used in my project. i only have facebook sdk in my project with chartboost, applovin, unity iap, and unity ads integrated. I found this code in my manifest

    <receiver
    android:name="com.facebook.CampaignTrackingReceiver"
    android:exported="true"
    android:permission="android.permission.INSTALL_PACKAGES" >
    <intent-filter>
    <action android:name="com.android.vending.INSTALL_REFERRER" />
    </intent-filter>
    </receiver>
    Hope will get the solution soon!
     
  16. Nadan

    Nadan

    Joined:
    Jan 20, 2013
    Posts:
    341
    I also wrote above that I only have the Facebook SDK.

    Does everybody here with this issue have Facebook SDK?

    I hope Facebook is aware of this, and they make a new SDK that could solve the issue:

    https://developers.facebook.com/docs/unity/downloads
     
    NatsuD_123 likes this.
  17. JeffDUnity3D

    JeffDUnity3D

    Joined:
    May 2, 2017
    Posts:
    14,446
    I don't think it's only Facebook, as others have mentioned, and I share your concerns.
     
    Nadan likes this.
  18. NatsuD_123

    NatsuD_123

    Joined:
    Feb 19, 2019
    Posts:
    18
    yahh that would be great if they update their sdk asap!
    i am still stuck with the issue!
     
  19. NatsuD_123

    NatsuD_123

    Joined:
    Feb 19, 2019
    Posts:
    18
    i guess its not only facebook then..! i suppose unity technologies will find a solution for it ASAP!
     
  20. Sailendu

    Sailendu

    Joined:
    Jul 23, 2009
    Posts:
    254
    So I found the fix if you're only using the official AdMob plugin by Google from the link below. The version 4.2.0 fixed it. They also released a newer version today which is 4.2.1 which I have not tried but it should also contain the fix. I made a build using 4.2.0 and the install referrer permission is no longer there and I submitted a build to Google Play.

    https://github.com/googleads/googleads-mobile-unity/releases
     
    absrndm likes this.
  21. absrndm

    absrndm

    Joined:
    May 16, 2017
    Posts:
    5
    Thank you for sharing your solution!