11

我收到了来自谷歌的电子邮件:

我们最近宣布我们将弃用 install_referrer 意图广播机制。由于您的一个或多个应用使用此意图来跟踪引荐,我们希望确保您在 2020 年 3 月 1 日之前进行切换。在此日期之后,新版本的 Play 商店应用将不再在应用安装后广播 install_referrer 意图。

我在 Stack 上检查了这个答案:install_referrer intent deprecation并遵循等待 Firebase 库更新的建议,现在我将我的项目更新到最新版本,但仍然在 package="com.google.firebase 下的清单合并中进入 INSTALL_REFERRER。测量_impl"

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.firebase.measurement_impl" >

<uses-sdk android:minSdkVersion="14" />

<!-- Required permission for App measurement to run. -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE" />

<application>
    <receiver
        android:name="com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver"
        android:enabled="true"
        android:exported="true"
        android:permission="android.permission.INSTALL_PACKAGES" >
        <intent-filter>
            <action android:name="com.android.vending.INSTALL_REFERRER" />
        </intent-filter>
    </receiver>
</application>

这里是我在项目中使用的 firebase 版本

    implementation 'com.google.firebase:firebase-messaging:20.1.0'
    implementation 'com.google.firebase:firebase-analytics:17.2.2'
    implementation 'com.google.firebase:firebase-crash:16.2.1'
    implementation 'com.google.android.gms:play-services-location:17.0.0'
    implementation 'com.google.firebase:firebase-crashlytics:17.0.0-beta01'
    implementation 'com.google.firebase:firebase-config:19.1.1'
    implementation 'com.google.firebase:firebase-auth:19.2.0'

现在 5 天后,3 月 1 日将到来,我没有找到解决这个问题的方法

4

1 回答 1

7

Google 的 installreferrer 库解决了这个问题。

implementation 'com.android.installreferrer:installreferrer:1.1'

按照此链接了解实现。在您的应用程序的启动活动中初始化客户端。

InstallReferrerClient referrerClient;
referrerClient = InstallReferrerClient.newBuilder(this).build();
referrerClient.startConnection(
    .... 
);

成功初始化客户端后,您可以存储从以下代码获得的引荐来源数据。

ReferrerDetails response = referrerClient.getInstallReferrer();
String referrerUrl = response.getInstallReferrer();

根据谷歌:

安装推荐人信息将在 90 天内可用,除非重新安装应用程序,否则不会更改。为避免在您的应用程序中调用不必要的 API,您应该在安装后的第一次执行期间仅调用一次 API。

于 2020-03-04T15:52:24.397 回答