0

根据Google Play 的开发者计划政策,开发者

  • 在获得肯定同意之前不得开始收集个人或敏感数据;

不过,目前我们使用三种不同的第三方服务跟踪用户安装:Branch.io、Mixpanel 和 AppsFlyer。我有一个BroadcastReceiver注册在我的AndroidManifest.xml

    <receiver
                android:name="org.example.InstallListener"
                android:exported="true">
                <intent-filter>
                    <action android:name="com.android.vending.INSTALL_REFERRER" />
                </intent-filter>
            </receiver>

BroadcastReceiver 的代码如下所示:

    public class InstallListener extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {

            // Mixpanel
            InstallReferrerReceiver mixpanelReferrerTracking = new InstallReferrerReceiver();
            mixpanelReferrerTracking.onReceive(context, intent);

            // Branch.io
            InstallListener branchIoReferrerTracking = new InstallListener();
            branchIoReferrerTracking.onReceive(context, intent);

            // AppsFlyer
            SingleInstallBroadcastReceiver appsFlyerReferrerTracking = new SingleInstallBroadcastReceiver();
            appsFlyerReferrerTracking.onReceive(context, intent);

        }

    }

这是基于AppsFlyer注册多个安装跟踪器的指南。

现在的问题是,如果我们要遵守上述 Google Play 的政策,我们如何才能在将推荐人数据发送到我们的第三方库之前获得用户同意?

据我了解,安装时从 Google Playcom.android.vending.INSTALL_REFERRER广播和接收BroadcastReceiver,所以我想这可能是在我什至可以启动对话以征求用户同意之前的任何时间。

安装跟踪数据是策略所指的个人或敏感数据的一部分是否也正确?

我们正在考虑的一种解决方案是将referrerintent中的额外内容保存到SharedPreferences接收到广播之后,然后在我们获得用户同意后从那里提取它,然后再将其传递给第三方跟踪器。这个解决方案正确吗?

4

1 回答 1

2

没有真正需要将数据“独立”存储在您的SharedPreferences“独立”中 - 您可以简单地实现MultipleInstallBroadcastReceiverAppsFlyer SDK 提供的内容,并在获得用户同意后保持 SDK 初始化。这可能适用于收集此数据的其他 SDK。

此外,我可以说绝大多数 AppsFlyer 用户都在使用(其中一个)MultipleInstallBroadcastReceiver/SingleInstallBroadCastReceiver接收器,我们从未遇到过这方面的任何问题。

PS 有点离题,但可能是相关的 - Google 提供了一种更新/更好/更安全的获取商店的方式INSTALL_REFERRERhttps ://developer.android.com/google/play/installreferrer/igetinstallreferrerservice

使用 AppsFlyer,您只需'com.android.installreferrer:installreferrer:1.0'使用 gradle 导入库,其余的由 AppsFlyer SDK 完成。

于 2019-05-22T16:25:53.333 回答